+# requires variable config loading, such as:
+# docker stack deploy -c <(docker-compose config) purplebirdman
+#
+# also needs an .env file with some variables!
+
version: '3'
-networks:
- proxy:
- external:
- name: proxy
services:
proxy:
image: nginx:1.17
volumes:
- - ./nginx.conf:/etc/nginx/nginx.conf
+ - ./proxy/nginx.conf:/etc/nginx/nginx.conf
+ - /etc/ssl/certs/purplebirdman/:/etc/ssl/certs/
environment:
- - NGINX_HOST=purplebirdman.online
- - NGINX_PORT=80
+ - NGINX_HOST=purplebirdman.com
+ - NGINX_PORT=443
ports:
- - 8080:80
- networks:
- - default
- - proxy
+ - 443:443
+ depends_on:
+ - purplebirdman
+ - kanboard
+ - public
+ purplebirdman:
+ image: cjpalmer/purplebirdman:1.0.0
+ kanboard:
+ image: kanboard/kanboard:v1.2.26
+ volumes:
+ - kanboard_data:/var/www/app/data
+ - kanboard_plugins:/var/www/app/plugins
+ - kanboard_ssl:/etc/nginx/ssl
+ public:
+ image: cjpalmer/public:1.2.2
+ volumes:
+ - ${SHARE_ROOT}:/storage
+ - public_data:/usr/local/apache2/htdocs
+ - httpd_users:/usr/local/apache2/auth
+ environment:
+ - PUBLIC_ROOT_DIR=/storage
+ - PUBLIC_LINK_DIR=/usr/local/apache2/htdocs
+ - PUBLIC_FQDN_OVERRIDE=https://public.purplebirdman.com
+volumes:
+ kanboard_data:
+ driver: local
+ driver_opts:
+ o: bind
+ type: none
+ device: /mnt/kanboard_data
+ kanboard_plugins:
+ driver: local
+ kanboard_ssl:
+ driver: local
+ public_data:
+ driver: local
+ driver_opts:
+ o: bind
+ type: none
+ device: /mnt/public_data
+ httpd_users:
+ driver: local