diff --git a/apps/couchpotato.yml b/apps/couchpotato.yml new file mode 100644 index 0000000..9fe4c46 --- /dev/null +++ b/apps/couchpotato.yml @@ -0,0 +1,71 @@ +#!/bin/bash +# +# Title: CouchPotato +# Author(s): Ruud Burger, Clinton Hall, YourHuckleberry, linuxserver +# URL: http://couchpota.to - https://github.com/CouchPotato/CouchPotatoServer/ +# GNU: General Public License v3.0 +################################################################################ +--- +- hosts: localhost + gather_facts: false + tasks: +# CORE (MANDATORY) DO NOT CHANGE ########################################### + + - name: 'Set Known Facts' + set_fact: + pgrole: "couchpotato" + intport: "5050" + extport: "5050" + image: "linuxserver/couchpotato:latest" + + - name: 'Including cron job' + include_tasks: '/opt/communityapps/apps/_core.yml' + +# LABELS ################################################################ + - name: 'Adding Traefik' + set_fact: + pg_labels: + traefik.frontend.auth.forward.address: '{{gauth}}' + traefik.enable: 'true' + traefik.port: '{{intport}}' + traefik.frontend.rule: 'Host:{{pgrole}}.{{domain.stdout}},{{tldset}}' + + - name: 'Setting PG Volumes' + set_fact: + pg_volumes: + - '/opt/appdata/{{pgrole}}:/config' + - '{{path.stdout}}/unionfs/{{pgrole}}/:/movies' + - '{{path.stdout}}/downloads/{{pgrole}}/:/downloads' + - '/etc/localtime:/etc/localtime:ro' + + - name: 'Setting PG ENV' + set_fact: + pg_env: + PUID: 1000 + PGID: 1000 + + + # MAIN DEPLOYMENT ############################################################## + + - name: 'Deploying {{pgrole}}' + docker_container: + name: '{{pgrole}}' + image: '{{image}}' + pull: yes + published_ports: + - '{{ports.stdout}}{{extport}}:{{intport}}' + volumes: '{{pg_volumes}}' + env: '{{pg_env}}' + restart_policy: unless-stopped + networks: + - name: plexguide + aliases: + - '{{pgrole}}' + state: started + labels: '{{pg_labels}}' + + # POST DEPLOYMENT ############################################################## + + - name: 'Post Deployment Notes' + debug: + msg: "\n* Login: root:plexguide *\n" \ No newline at end of file diff --git a/apps/mariadb.yml b/apps/mariadb.yml new file mode 100644 index 0000000..4f55c97 --- /dev/null +++ b/apps/mariadb.yml @@ -0,0 +1,67 @@ +#!/bin/bash +# +# Title: MariaDB +# Author(s): MariaDB Foundation +# URL: https://mariadb.com - https://github.com/docker-library/mariadb +# GNU: General Public License v2.0 +################################################################################ +--- +- hosts: localhost + gather_facts: false + tasks: +# CORE (MANDATORY) DO NOT CHANGE ########################################### + + - name: 'Set Known Facts' + set_fact: + pgrole: "mariadb" + intport: "3306" + extport: "9191" + image: "mariadb:latest" + + - name: 'Including cron job' + include_tasks: '/opt/communityapps/apps/_core.yml' + +# LABELS ################################################################ + - name: 'Adding Traefik' + set_fact: + pg_labels: + traefik.frontend.auth.forward.address: '{{gauth}}' + traefik.enable: 'true' + traefik.port: '{{intport}}' + traefik.frontend.rule: 'Host:{{pgrole}}.{{domain.stdout}},{{tldset}}' + + - name: 'Setting PG Volumes' + set_fact: + pg_volumes: + - '/opt/appdata/{{pgrole}}:/var/lib/mysql' + - '/etc/localtime:/etc/localtime:ro' + + - name: 'Setting PG ENV' + set_fact: + pg_env: + MYSQL_ROOT_PASSWORD: plexguide + + # MAIN DEPLOYMENT ############################################################## + + - name: 'Deploying {{pgrole}}' + docker_container: + name: '{{pgrole}}' + image: '{{image}}' + pull: yes + published_ports: + - '{{ports.stdout}}{{extport}}:{{intport}}' + volumes: '{{pg_volumes}}' + env: '{{pg_env}}' + restart_policy: unless-stopped + networks: + - name: plexguide + aliases: + - '{{pgrole}}' + state: started + labels: '{{pg_labels}}' + + # POST DEPLOYMENT ############################################################## + + - name: 'Post Deployment Notes' + debug: + msg: "\n* Login: root:plexguide *\n" \ No newline at end of file diff --git a/apps/pydio-cells.yml b/apps/pydio-cells.yml new file mode 100644 index 0000000..14acc98 --- /dev/null +++ b/apps/pydio-cells.yml @@ -0,0 +1,73 @@ +#!/bin/bash +# +# Title: Pydio Cells +# Author(s): Pydio +# URL: https://pydio.com +# GNU: General Public License v3.0 +################################################################################ +--- +- hosts: localhost + gather_facts: false + tasks: +# CORE (MANDATORY) DO NOT CHANGE ########################################### + + - name: 'Set Known Facts' + set_fact: + pgrole: "pydio-cells" + intport: "8080" + extport: "8585" + image: "pydio/cells:latest" + + - name: 'Including cron job' + include_tasks: '/opt/communityapps/apps/_core.yml' + +# LABELS ################################################################ + - name: 'Adding Traefik' + set_fact: + pg_labels: + traefik.frontend.auth.forward.address: '{{gauth}}' + traefik.enable: 'true' + traefik.port: '{{intport}}' + traefik.frontend.rule: 'Host:{{pgrole}}.{{domain.stdout}},{{tldset}}' + + - name: 'Setting PG Volumes' + set_fact: + pg_volumes: + - '/opt/appdata/{{pgrole}}/pydio.json:/root/.config/pydio/cells/pydio.json' + - '/opt/appdata/{{pgrole}}/data:/root/.config/pydio/cells/data' + - '/opt/appdata/{{pgrole}}/logs:/root/.config/pydio/cells/logs' + - '/opt/appdata/{{pgrole}}/services:/root/.config/pydio/cells/services' + - '/mnt:/mnt' + - '/etc/localtime:/etc/localtime:ro' + + - name: 'Setting PG ENV' + set_fact: + pg_env: + CELLS_BIND: localhost:8080 + CELLS_EXTERNAL: '{{pgrole}}.{{domain.stdout}},{{tldset}}' + + + # MAIN DEPLOYMENT ############################################################## + + - name: 'Deploying {{pgrole}}' + docker_container: + name: '{{pgrole}}' + image: '{{image}}' + pull: yes + published_ports: + - '{{ports.stdout}}{{extport}}:{{intport}}' + volumes: '{{pg_volumes}}' + env: '{{pg_env}}' + restart_policy: unless-stopped + networks: + - name: plexguide + aliases: + - '{{pgrole}}' + state: started + labels: '{{pg_labels}}' + + # POST DEPLOYMENT ############################################################## + + - name: 'Post Deployment Notes' + debug: + msg: "\n* Pydio Cells requires a MySQL or MariaDB database (not included) *\n* Version 5.6 or higher (or MariaDB equivalent) *\n" diff --git a/apps/pydio.yml b/apps/pydio.yml new file mode 100644 index 0000000..6733400 --- /dev/null +++ b/apps/pydio.yml @@ -0,0 +1,70 @@ +#!/bin/bash +# +# Title: Pydio (formerly AjaXplorer) +# Author(s): Pydio, linuxserver +# URL: https://pydio.com +# GNU: General Public License v3.0 +################################################################################ +--- +- hosts: localhost + gather_facts: false + tasks: +# CORE (MANDATORY) DO NOT CHANGE ########################################### + + - name: 'Set Known Facts' + set_fact: + pgrole: "pydio" + intport: "443" + extport: "9149" + image: "linuxserver/pydio:latest" + + - name: 'Including cron job' + include_tasks: '/opt/communityapps/apps/_core.yml' + +# LABELS ################################################################ + - name: 'Adding Traefik' + set_fact: + pg_labels: + traefik.frontend.auth.forward.address: '{{gauth}}' + traefik.enable: 'true' + traefik.port: '{{intport}}' + traefik.frontend.rule: 'Host:{{pgrole}}.{{domain.stdout}},{{tldset}}' + + - name: 'Setting PG Volumes' + set_fact: + pg_volumes: + - '/opt/appdata/{{pgrole}}/config:/config' + - '/opt/appdata/{{pgrole}}/data:/data' + - '/mnt:/mnt' + - '/etc/localtime:/etc/localtime:ro' + + - name: 'Setting PG ENV' + set_fact: + pg_env: + PUID: 1000 + PGID: 1000 + + # MAIN DEPLOYMENT ############################################################## + + - name: 'Deploying {{pgrole}}' + docker_container: + name: '{{pgrole}}' + image: '{{image}}' + pull: yes + published_ports: + - '{{ports.stdout}}{{extport}}:{{intport}}' + volumes: '{{pg_volumes}}' + env: '{{pg_env}}' + restart_policy: unless-stopped + networks: + - name: plexguide + aliases: + - '{{pgrole}}' + state: started + labels: '{{pg_labels}}' + + # POST DEPLOYMENT ############################################################## + + - name: 'Post Deployment Notes' + debug: + msg: "\n* You must create a user and database for pydio to use in a mysql/mariadb or postgresql server.\n* You can use sqlite with no further config needed, but this should only be considered for testing purposes.\n* In the setup page for database, use the ip address rather than hostname..." \ No newline at end of file diff --git a/apps/sickchill.yml b/apps/sickchill.yml new file mode 100644 index 0000000..eb5a149 --- /dev/null +++ b/apps/sickchill.yml @@ -0,0 +1,65 @@ +#!/bin/bash +# +# Title: sickchill +# Author(s): Alexis Tyler, miigotu, fernandog, sickchill community, binhex +# URL: https://sickchill.github.io/ - https://github.com/SickChill/SickChill +# GNU: General Public License v3.0 +################################################################################ +--- +- hosts: localhost + gather_facts: false + tasks: +# CORE (MANDATORY) DO NOT CHANGE ########################################### + + - name: 'Set Known Facts' + set_fact: + pgrole: "sickchill" + intport: "8081" + extport: "9292" + image: "binhex/arch-sickchill:latest" + + - name: 'Including cron job' + include_tasks: '/opt/communityapps/apps/_core.yml' + +# LABELS ################################################################ + - name: 'Adding Traefik' + set_fact: + pg_labels: + traefik.frontend.auth.forward.address: '{{gauth}}' + traefik.enable: 'true' + traefik.port: '{{intport}}' + traefik.frontend.rule: 'Host:{{pgrole}}.{{domain.stdout}},{{tldset}}' + + - name: 'Setting PG Volumes' + set_fact: + pg_volumes: + - '/opt/appdata/{{pgrole}}:/config' + - '{{path.stdout}}/downloads/{{pgrole}}:/data' + - '/mnt:/media' + - '/etc/localtime:/etc/localtime:ro' + + - name: 'Setting PG ENV' + set_fact: + pg_env: + PUID: 1000 + PGID: 1000 + + + # MAIN DEPLOYMENT ############################################################## + + - name: 'Deploying {{pgrole}}' + docker_container: + name: '{{pgrole}}' + image: '{{image}}' + pull: yes + published_ports: + - '{{ports.stdout}}{{extport}}:{{intport}}' + volumes: '{{pg_volumes}}' + env: '{{pg_env}}' + restart_policy: unless-stopped + networks: + - name: plexguide + aliases: + - '{{pgrole}}' + state: started + labels: '{{pg_labels}}' \ No newline at end of file diff --git a/apps/sickrage.yml b/apps/sickrage.yml new file mode 100644 index 0000000..1c561d0 --- /dev/null +++ b/apps/sickrage.yml @@ -0,0 +1,65 @@ +#!/bin/bash +# +# Title: sickrage +# Author(s): echel0n, linuxserver +# URL: https://www.sickrage.ca/ - https://git.sickrage.ca/SiCKRAGE/sickrage +# GNU: General Public License v3.0 +################################################################################ +--- +- hosts: localhost + gather_facts: false + tasks: +# CORE (MANDATORY) DO NOT CHANGE ########################################### + + - name: 'Set Known Facts' + set_fact: + pgrole: "sickrage" + intport: "8081" + extport: "9191" + image: "linuxserver/sickrage:latest" + + - name: 'Including cron job' + include_tasks: '/opt/communityapps/apps/_core.yml' + +# LABELS ################################################################ + - name: 'Adding Traefik' + set_fact: + pg_labels: + traefik.frontend.auth.forward.address: '{{gauth}}' + traefik.enable: 'true' + traefik.port: '{{intport}}' + traefik.frontend.rule: 'Host:{{pgrole}}.{{domain.stdout}},{{tldset}}' + + - name: 'Setting PG Volumes' + set_fact: + pg_volumes: + - '/opt/appdata/{{pgrole}}:/config' + - '{{path.stdout}}/unionfs/{{pgrole}}/:/tv' + - '{{path.stdout}}/downloads/{{pgrole}}/:/downloads' + - '/etc/localtime:/etc/localtime:ro' + + - name: 'Setting PG ENV' + set_fact: + pg_env: + PUID: 1000 + PGID: 1000 + + + # MAIN DEPLOYMENT ############################################################## + + - name: 'Deploying {{pgrole}}' + docker_container: + name: '{{pgrole}}' + image: '{{image}}' + pull: yes + published_ports: + - '{{ports.stdout}}{{extport}}:{{intport}}' + volumes: '{{pg_volumes}}' + env: '{{pg_env}}' + restart_policy: unless-stopped + networks: + - name: plexguide + aliases: + - '{{pgrole}}' + state: started + labels: '{{pg_labels}}' \ No newline at end of file