bunkerweb/examples/php-multisite/docker-compose.yml

88 lines
3 KiB
YAML
Raw Normal View History

version: "3"
2022-06-03 15:24:14 +00:00
services:
mybunker:
2022-12-02 14:37:23 +00:00
image: bunkerity/bunkerweb:1.5.0
2022-06-03 15:24:14 +00:00
ports:
- 80:8080
- 443:8443
# ⚠️ read this if you use local folders for volumes ⚠️
# bunkerweb runs as an unprivileged user with UID/GID 101
# don't forget to edit the permissions of the files and folders accordingly
# example if you need to create a directory : mkdir folder && chown root:101 folder && chmod 770 folder
# another example for existing folder : chown -R root:101 folder && chmod -R 770 folder
# more info at https://docs.bunkerweb.io
volumes:
- ./bw-data:/data # contains web files (PHP, assets, ...), don't forget to rename the subfolders
environment:
- SERVER_NAME=app1.example.com app2.example.com # replace with your domains
2022-12-02 14:37:23 +00:00
- API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24
2022-06-03 15:24:14 +00:00
- MULTISITE=yes
- AUTO_LETS_ENCRYPT=yes
- DISABLE_DEFAULT_SERVER=yes
- USE_CLIENT_CACHE=yes
- USE_GZIP=yes
- app1.example.com_REMOTE_PHP=myapp1
- app1.example.com_REMOTE_PHP_PATH=/app
- app2.example.com_REMOTE_PHP=myapp2
- app2.example.com_REMOTE_PHP_PATH=/app
2022-12-02 14:37:23 +00:00
labels:
- "bunkerweb.INSTANCE" # required for the scheduler to recognize the container
2022-06-03 15:24:14 +00:00
networks:
2022-12-02 14:37:23 +00:00
- bw-universe
- net-app1
- net-app2
bw-scheduler:
image: bunkerity/bunkerweb-scheduler:1.5.0
depends_on:
- mybunker
environment:
- DOCKER_HOST=tcp://docker-proxy:2375
volumes:
- ./bw-data:/data
networks:
- bw-universe
- net-docker
docker-proxy:
2022-12-05 10:47:56 +00:00
image: tecnativa/docker-socket-proxy:0.1
2022-12-02 14:37:23 +00:00
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
- CONTAINERS=1
networks:
- net-docker
2022-06-03 15:24:14 +00:00
myapp1:
2022-12-05 10:47:56 +00:00
image: php:fpm-alpine3.17
# ⚠️ UID and GID of mywww (101:101) and php:fpm-alpine3.17 (82:82) are not the same ⚠️
2022-06-03 15:24:14 +00:00
# but both needs access to the files and folders of web-files
# don't forget to edit the permissions of the files and folders accordingly
2022-12-05 10:47:56 +00:00
# example : chown -R 82:101 ./bw-data/www && find ./bw-data/www -type f -exec chmod 0640 {} \; && find ./bw-data/www -type d -exec chmod 0750 {} \;
2022-06-03 15:24:14 +00:00
volumes:
- ./bw-data/www/app1.example.com:/app # folder containing PHP app1 (don't forget to rename it)
networks:
2022-12-02 14:37:23 +00:00
- net-app1
2022-06-03 15:24:14 +00:00
myapp2:
2022-12-05 10:47:56 +00:00
image: php:fpm-alpine3.17
# ⚠️ UID and GID of bunkerweb (101:101) and php:fpm-alpine3.17 (82:82) are not the same ⚠️
2022-06-03 15:24:14 +00:00
# but both needs access to the files and folders of web-files
# don't forget to edit the permissions of the files and folders accordingly
2022-12-05 10:47:56 +00:00
# example : chown -R 82:101 ./bw-data/www && find ./bw-data/www -type f -exec chmod 0640 {} \; && find ./bw-data/www -type d -exec chmod 0750 {} \;
2022-06-03 15:24:14 +00:00
volumes:
- ./bw-data/www/app2.example.com:/app # folder containing PHP app2 (don't forget to rename it)
networks:
2022-12-02 14:37:23 +00:00
- net-app2
2022-06-03 15:24:14 +00:00
networks:
2022-12-02 14:37:23 +00:00
bw-universe:
ipam:
driver: default
config:
- subnet: 10.20.30.0/24
net-docker:
net-app1:
net-app2: