]> Untitled Git - proxy.git/blob - docker-compose.yml
Added WS magic
[proxy.git] / docker-compose.yml
1 # requires variable config loading, such as:
2 # docker stack deploy -c <(docker-compose config) purplebirdman
3 #
4 # also needs an .env file with some variables!
5
6 version: '3'
7 networks:
8     go-backend:
9         driver: overlay
10 services:
11     proxy:
12         image: nginx:1.17
13         volumes:
14         - ./proxy/nginx.conf:/etc/nginx/nginx.conf
15         - /etc/ssl/certs/purplebirdman/:/etc/ssl/certs/
16         environment:
17         - NGINX_HOST=purplebirdman.com
18         - NGINX_PORT=443
19         ports:
20         - 443:443
21         depends_on:
22         - purplebirdman
23         - kanboard
24         - public
25         - go-web
26     purplebirdman:
27         image: cjpalmer/purplebirdman:1.0.0
28     kanboard:
29         image: kanboard/kanboard:v1.2.26
30         volumes:
31         - kanboard_data:/var/www/app/data
32         - kanboard_plugins:/var/www/app/plugins
33         - kanboard_ssl:/etc/nginx/ssl
34     public:
35         image: cjpalmer/public:1.2.2
36         volumes:
37         - ${SHARE_ROOT}:/storage
38         - public_data:/usr/local/apache2/htdocs
39         - httpd_users:/usr/local/apache2/auth
40         environment:
41         - PUBLIC_ROOT_DIR=/storage
42         - PUBLIC_LINK_DIR=/usr/local/apache2/htdocs
43         - PUBLIC_FQDN_OVERRIDE=https://public.purplebirdman.com
44     db:
45         image: mariadb:10.6
46         environment:
47             MARIADB_ROOT_PASSWORD: admin
48             MARIADB_DATABASE: go
49             MARIADB_USER: socket
50             MARIADB_PASSWORD: socketpw
51         networks:
52         - go-backend
53     socket:
54         image: cjpalmer/go-socket:1.0.0
55         networks:
56         - go-backend
57         depends_on:
58         - db
59     go-web:
60         image: cjpalmer/go-web:1.0.0
61         networks:
62         - default
63         - go-backend
64         depends_on:
65         - socket
66 volumes:
67     kanboard_data:
68         driver: local
69         driver_opts:
70             o: bind
71             type: none
72             device: /mnt/kanboard_data
73     kanboard_plugins:
74         driver: local
75     kanboard_ssl:
76         driver: local
77     public_data:
78         driver: local
79         driver_opts:
80             o: bind
81             type: none
82             device: /mnt/public_data
83     httpd_users:
84         driver: local