docker-installationen/docker/invoiceNinja/docker-compose.yml

54 lines
1.5 KiB
YAML

services:
server:
container_name: invoiceninja-server
image: nginx
restart: always
env_file: env
volumes:
- /etc/localtime:/etc/localtime:ro
- ./config/nginx/in-vhost.conf:/etc/nginx/conf.d/in-vhost.conf:ro
- ./docker/app/public:/var/www/app/public:ro
labels:
- "traefik.enable=true"
- "traefik.http.routers.invoiceninja.rule=Host(`invoice.hessenkamp-server.de`)"
- "traefik.http.routers.invoiceninja.entrypoints=websecure"
- "traefik.http.routers.invoiceninja.tls.certresolver=letsencrypt"
- "traefik.http.services.invoiceninja.loadbalancer.server.port=80"
depends_on:
- app
networks:
- traefik_network
app:
container_name: invoiceninja-app
image: invoiceninja/invoiceninja:5
env_file: env
restart: always
volumes:
- /etc/localtime:/etc/localtime:ro
- ./config/hosts:/etc/hosts:ro
- ./docker/app/public:/var/www/app/public:rw,delegated
- ./docker/app/storage:/var/www/app/storage:rw,delegated
depends_on:
- db
networks:
- traefik_network
db:
container_name: invoiceninja-db
image: mariadb:10.4
restart: always
env_file: env
volumes:
- /etc/localtime:/etc/localtime:ro
- ./docker/mysql/data:/var/lib/mysql:rw,delegated
- ./docker/mysql/bak:/backups:rw
- ./config/mysql/backup-script:/etc/cron.weekly/weekly:ro
networks:
- traefik_network
networks:
traefik_network:
external: true