148 lines
4.3 KiB
Django/Jinja
148 lines
4.3 KiB
Django/Jinja
version: '3.8'
|
|
|
|
networks:
|
|
{{ bluecloud_webodv_haproxy_public_net }}:
|
|
external: true
|
|
{{ bluecloud_webodv_docker_network }}:
|
|
|
|
volumes:
|
|
{{ bluecloud_webodv_db_volume }}:
|
|
driver: local
|
|
driver_opts:
|
|
type: {{ bluecloud_webodv_db_volume_type }}
|
|
o: "{{ bluecloud_webodv_db_volume_o }}"
|
|
device: "{{ bluecloud_webodv_db_volume_device }}"
|
|
{{ bluecloud_webodv_dbodv_volume }}:
|
|
driver: local
|
|
driver_opts:
|
|
type: {{ bluecloud_webodv_dbodv_volume_type }}
|
|
o: "{{ bluecloud_webodv_dbodv_volume_o }}"
|
|
device: "{{ bluecloud_webodv_dbodv_volume_device }}"
|
|
{{ bluecloud_webodv_data_volume }}:
|
|
driver: local
|
|
driver_opts:
|
|
type: {{ bluecloud_webodv_data_volume_type }}
|
|
o: "{{ bluecloud_webodv_data_volume_o }}"
|
|
device: "{{ bluecloud_webodv_data_volume_device }}"
|
|
|
|
services:
|
|
db:
|
|
image: mysql/mysql-server:8.0.0
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: {{ bluecloud_webodv_mysql_root_password }}
|
|
MYSQL_DATABASE: {{ bluecloud_webodv_db_name }}
|
|
MYSQL_USER: {{ bluecloud_webodv_db_user }}
|
|
MYSQL_PASSWORD: {{ bluecloud_webodv_mysql_password }}
|
|
networks:
|
|
- {{ bluecloud_webodv_docker_network }}
|
|
volumes:
|
|
- {{ bluecloud_webodv_db_volume }}:/var/lib/mysql
|
|
deploy:
|
|
placement:
|
|
constraints: [node.role == worker]
|
|
restart_policy:
|
|
condition: on-failure
|
|
delay: 5s
|
|
max_attempts: 3
|
|
window: 120s
|
|
logging:
|
|
driver: 'journald'
|
|
dbodv:
|
|
image: mysql/mysql-server:8.0.0
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: {{ bluecloud_webodv_mysql_root_password }}
|
|
MYSQL_DATABASE: {{ bluecloud_webodv_dbodv_name }}
|
|
MYSQL_USER: {{ bluecloud_webodv_dbodv_user }}
|
|
MYSQL_PASSWORD: {{ bluecloud_webodv_mysql_password }}
|
|
networks:
|
|
- {{ bluecloud_webodv_docker_network }}
|
|
volumes:
|
|
- {{ bluecloud_webodv_dbodv_volume }}:/var/lib/mysql
|
|
deploy:
|
|
placement:
|
|
constraints: [node.role == worker]
|
|
restart_policy:
|
|
condition: on-failure
|
|
delay: 5s
|
|
max_attempts: 3
|
|
window: 120s
|
|
logging:
|
|
driver: 'journald'
|
|
phpmyadmin-db:
|
|
image: phpmyadmin/phpmyadmin
|
|
networks:
|
|
- {{ bluecloud_webodv_haproxy_public_net }}
|
|
- {{ bluecloud_webodv_docker_network }}
|
|
environment:
|
|
PMA_HOST: db
|
|
PMA_PORT: 3306
|
|
deploy:
|
|
placement:
|
|
constraints: [node.role == worker]
|
|
restart_policy:
|
|
condition: on-failure
|
|
delay: 5s
|
|
max_attempts: 3
|
|
window: 120s
|
|
logging:
|
|
driver: 'journald'
|
|
phpmyadmin-dbodv:
|
|
image: phpmyadmin/phpmyadmin
|
|
depends_on:
|
|
- dbodv
|
|
ports:
|
|
- 11110:80
|
|
networks:
|
|
- {{ bluecloud_webodv_haproxy_public_net }}
|
|
- {{ bluecloud_webodv_docker_network }}
|
|
environment:
|
|
PMA_HOST: dbodv
|
|
PMA_PORT: 3306
|
|
deploy:
|
|
placement:
|
|
constraints: [node.role == worker]
|
|
restart_policy:
|
|
condition: on-failure
|
|
delay: 5s
|
|
max_attempts: 3
|
|
window: 120s
|
|
logging:
|
|
driver: 'journald'
|
|
webodv:
|
|
image: smieruch/webodv_bluecloud:latest
|
|
depends_on:
|
|
- dbodv
|
|
- db
|
|
ports:
|
|
- 11112:80
|
|
networks:
|
|
- haproxy-public
|
|
- {{ bluecloud_webodv_docker_network }}
|
|
volumes:
|
|
- {{ bluecloud_webodv_data_volume }}:/var/www/html/webodv/storage/app/default:rw
|
|
environment:
|
|
settings_name: {{ bluecloud_webodv_settings_name }}
|
|
settings_path: {{ bluecloud_webodv_settings_path }}
|
|
path_to_odv_settings: {{ bluecloud_webodv_path_to_settings }}
|
|
proxy_ws: {{ bluecloud_webodv_ws_proxy }}
|
|
REVERSE_PROXY: {{ bluecloud_webodv_reverse_proxy }}
|
|
FORCE_SCHEME: {{ bluecloud_webodv_scheme }}
|
|
FORCE_ROOT_URL: {{ bluecloud_webodv_root_url }}
|
|
SESSION_SECURE_COOKIE: "{{ bluecloud_webodv_session_secure_cookie }}"
|
|
SAME_SITE: {{ bluecloud_webodv_same_site }}
|
|
MAIL_PASSWORD: {{ bluecloud_webodv_smtp_password }}
|
|
DB_PASSWORD: {{ bluecloud_webodv_mysql_password }}
|
|
SSH_CLIENT: {{ bluecloud_webodv_ssl_client }}
|
|
CLIENT_URL: {{ bluecloud_webodv_client_url }}
|
|
HTTP_PORT: {{ bluecloud_webodv_http_port }}
|
|
deploy:
|
|
placement:
|
|
constraints: [node.role == worker]
|
|
restart_policy:
|
|
condition: on-failure
|
|
delay: 5s
|
|
max_attempts: 3
|
|
window: 120s
|
|
logging:
|
|
driver: 'journald'
|