Files
Personal-Rancher-Catalog/templates/Joomla/0/docker-compose.yml
2019-09-17 20:23:19 -04:00

67 lines
2.5 KiB
YAML

version: '2'
services:
joomla:
image: williammiceli/joomla:${IMAGE_VERSION}
dns: # Using Cloudflare DNS
- 1.1.1.1
- 1.0.0.1
- 2606:4700:4700::1111
- 2606:4700:4700::1001
environment:
JOOMLA_DB_HOST: mysql
JOOMLA_DB_NAME: joomla_db
JOOMLA_DB_USER: joomla_user
JOOMLA_DB_PASSWORD: ${DB_USER_PASS}
labels:
io.rancher.container.pull_image: always
{{- if .Values.HOST_LABEL}}
io.rancher.scheduler.affinity:host_label: ${HOST_LABEL}
{{- end}}
traefik.enable: true
### Start Joomla Segment
# traefik.frontend.entryPoints: http,https
# traefik.frontend.headers.forceSTSHeader: true
# traefik.frontend.headers.referrerPolicy: no-referrer # Security enhancement (Prevents leaking of referer information)
# traefik.frontend.headers.SSLRedirect: true
# traefik.frontend.headers.STSPreload: true
# traefik.frontend.headers.STSSeconds: 15552000
# traefik.frontend.passHostHeader: true
# traefik.frontend.rule: Host:${TRAEFIK_HOST}
# traefik.port: "80"
### End Joomla Segment
# Might need to include $${service_name} too
traefik.http.routers.{{.Stack.Name}}.rule: "Host('${TRAEFIK_HOST}')"
traefik.http.routers.{{.Stack.Name}}.entrypoints: "['http','https']"
traefik.http.routers.{{.Stack.Name}}.tls.certresolver: "letsencrypt"
links:
- mysql
restart: on-failure
volumes:
- /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system
- /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system
- /Persistent/${DATA_DIR}/Files:/var/www/html # Joomla Public Files
mysql:
image: mysql:5
dns: # Using Cloudflare DNS
- 1.1.1.1
- 1.0.0.1
- 2606:4700:4700::1111
- 2606:4700:4700::1001
environment:
MYSQL_DATABASE: joomla_db
MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASS}
MYSQL_USER: joomla_user
MYSQL_PASSWORD: ${DB_USER_PASS}
labels:
io.rancher.container.pull_image: always
{{- if .Values.HOST_LABEL}}
io.rancher.scheduler.affinity:host_label: ${HOST_LABEL}
{{- end}}
traefik.enable: false
restart: on-failure
volumes:
- /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system
- /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system
- /Persistent/${DATA_DIR}/Database:/var/lib/mysql # MySQL data