Files
ts-onlinetime-ranks/docker-compose.yml

175 lines
5.0 KiB
YAML

version: '3.7'
services:
frontend:
image: docker.humenius.me/humenius/ts-onlinetime-ranks-frontend:latest
networks:
- traefik-proxy
env_file: .env
deploy:
resources:
limits:
cpus: '0.50'
memory: 1024M
reservations:
cpus: '0.25'
memory: 512M
labels:
traefik.enable: "true"
traefik.docker.network: traefik-proxy
traefik.constraint-label: traefik-proxy
# Watchtower update
com.centurylinklabs.watchtower.enable: "true"
# HTTPS
traefik.http.routers.tsotr-frontend-secure.entrypoints: web-secure
traefik.http.routers.tsotr-frontend-secure.rule: Host(`tsotr.humenius.me`)
traefik.http.routers.tsotr-frontend-secure.tls.certresolver: letsencrypt
traefik.http.services.tsotr-frontend.loadbalancer.server.port: 5000
backend:
image: docker.humenius.me/humenius/ts-onlinetime-ranks-backend:latest
networks:
- traefik-proxy
- ts-onlinetime-ranks
env_file: .env
deploy:
resources:
limits:
cpus: '0.50'
memory: 1024M
reservations:
cpus: '0.25'
memory: 512M
labels:
traefik.enable: "true"
traefik.docker.network: traefik-proxy
traefik.constraint-label: traefik-proxy
# Watchtower update
com.centurylinklabs.watchtower.enable: "true"
# HTTPS
traefik.http.routers.tsotr-backend-secure.entrypoints: web-secure
traefik.http.routers.tsotr-backend-secure.rule: Host(`api.tsotr.humenius.me`)
traefik.http.routers.tsotr-backend-secure.tls.certresolver: letsencrypt
traefik.http.services.tsotr-backend.loadbalancer.server.port: 3500
frontend-dev:
image: docker.humenius.me/humenius/ts-onlinetime-ranks-frontend:dev-latest
networks:
- proxy
env_file: .env_beta
deploy:
resources:
limits:
cpus: '0.50'
memory: 1024M
reservations:
cpus: '0.25'
memory: 512M
labels:
traefik.enable: "true"
traefik.docker.network: traefik-proxy
traefik.constraint-label: traefik-proxy
# Watchtower update
com.centurylinklabs.watchtower.enable: "true"
# HTTPS
traefik.http.routers.tsotr-backend-secure.entrypoints: web-secure
traefik.http.routers.tsotr-backend-secure.rule: Host(`beta.tsotr.humenius.me`)
traefik.http.routers.tsotr-backend-secure.tls.certresolver: letsencrypt
traefik.http.services.tsotr-backend.loadbalancer.server.port: 5000
labels:
- traefik.enable=true
- traefik.http.services.tsotr-frontend.loadbalancer.server.port=5000
# Watchtower update
- com.centurylinklabs.watchtower.enable=true
# HTTPS
- traefik.http.routers.tsotr-frontend-secure.entrypoints=web-secure
- traefik.http.routers.tsotr-frontend-secure.rule=Host(`beta.tsotr.humenius.me`)
- traefik.http.routers.tsotr-frontend-secure.tls.certresolver=letsencrypt
backend-dev:
image: docker.humenius.me/humenius/ts-onlinetime-ranks-backend:dev-latest
networks:
- proxy
- ts-onlinetime-ranks
env_file: .env_beta
deploy:
resources:
limits:
cpus: '0.50'
memory: 1024M
reservations:
cpus: '0.25'
memory: 512M
labels:
traefik.enable: "true"
traefik.docker.network: traefik-proxy
traefik.constraint-label: traefik-proxy
# Watchtower update
com.centurylinklabs.watchtower.enable: "true"
# HTTPS
traefik.http.routers.tsotr-backend-secure.entrypoints: web-secure
traefik.http.routers.tsotr-backend-secure.rule: Host(`api.beta.tsotr.humenius.me`)
traefik.http.routers.tsotr-backend-secure.tls.certresolver: letsencrypt
traefik.http.services.tsotr-backend.loadbalancer.server.port: 3500
labels:
- traefik.enable=true
- traefik.http.services.tsotr-backend.loadbalancer.server.port=3500
# Watchtower update
- com.centurylinklabs.watchtower.enable=true
# HTTPS
- traefik.http.routers.tsotr-backend-secure.entrypoints=web-secure
- traefik.http.routers.tsotr-backend-secure.rule=Host(`api.beta.tsotr.humenius.me`)
- traefik.http.routers.tsotr-backend-secure.tls.certresolver=letsencrypt
db:
hostname: ts-onlinetime-ranks-db
image: docker.io/bitnami/mariadb:10.5-debian-10
env_file: .env
ports:
- target: 3306
published: 13307
mode: host
networks:
- ts-onlinetime-ranks
healthcheck:
test: ['CMD', '/opt/bitnami/scripts/mariadb/healthcheck.sh']
interval: 15s
timeout: 5s
retries: 6
deploy:
resources:
limits:
cpus: '0.50'
memory: 1024M
reservations:
cpus: '0.25'
memory: 512M
volumes:
- ts-onlinetime-ranks-db:/bitnami/mariadb
networks:
traefik-proxy:
external: true
ts-onlinetime-ranks:
external: true
volumes:
ts-onlinetime-ranks-db:
driver: local