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