Uses php-fpm image and is served through a simple caddy server. Automatically deploys by default and can be automatically deployed with smtp e-mail sending and s3 primary object storage optionally if desired. Utilizes some necessary hackery for container ordering and startup so startup is relatively slow (takes around 2-5 minutes at least) but once running should be stable and uninterrupted. Implements health-checks for all involved containers. Switch apache for php-fpm image
30 lines
689 B
Django/Jinja
30 lines
689 B
Django/Jinja
version: "3.7"
|
|
|
|
services:
|
|
app:
|
|
image: caddy:{{ caddy_version }}
|
|
command: caddy run --config /etc/caddy/config.json
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--quiet", "--spider", "--tries=1", "http://localhost:2019/metrics"]
|
|
interval: 1m
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 1m
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
volumes:
|
|
- "{{ caddy_caddyfile_dir }}:/etc/caddy"
|
|
- "{{ docker_stack_files_dir }}:/stacks:ro"
|
|
- data:/data
|
|
- config:/config
|
|
networks:
|
|
- "{{ docker_swarm_public_network_name }}"
|
|
|
|
volumes:
|
|
data:
|
|
config:
|
|
|
|
networks:
|
|
"{{ docker_swarm_public_network_name }}":
|
|
external: true
|