#!/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..."