services: wallabag: image: wallabag/wallabag:latest container_name: wallabag restart: unless-stopped environment: - MYSQL_ROOT_PASSWORD=${WALLABAG_DB_ROOT_PASSWORD} - SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql - SYMFONY__ENV__DATABASE_HOST=db - SYMFONY__ENV__DATABASE_PORT=3306 - SYMFONY__ENV__DATABASE_NAME=wallabag - SYMFONY__ENV__DATABASE_USER=wallabag - SYMFONY__ENV__DATABASE_PASSWORD=${WALLABAG_DB_PASSWORD} - SYMFONY__ENV__DATABASE_CHARSET=utf8mb4 - SYMFONY__ENV__MAILER_HOST=127.0.0.1 - SYMFONY__ENV__MAILER_USER=~ - SYMFONY__ENV__MAILER_PASSWORD=~ - SYMFONY__ENV__FROM_EMAIL=wallabag@${DOMAIN} - SYMFONY__ENV__DOMAIN_NAME=https://wallabag.${DOMAIN} expose: - 80 networks: - web - default volumes: - ./images:/var/www/wallabag/web/assets/images labels: - "traefik.enable=true" - "traefik.http.routers.wallabag.entrypoints=https" - "traefik.http.routers.wallabag.rule=Host(`wallabag.${DOMAIN}`)" - "traefik.http.routers.wallabag.tls.certresolver=http" - "traefik.http.middlewares.wallabag-header.headers.customRequestHeaders.X-Forwarded-Proto=https" - "traefik.http.routers.wallabag.middlewares=wallabag-header" depends_on: - db - redis db: image: mariadb container_name: wallabag-db restart: unless-stopped environment: - MYSQL_ROOT_PASSWORD=${WALLABAG_DB_ROOT_PASSWORD} - MARIADB_AUTO_UPGRADE=1 volumes: - ./data:/var/lib/mysql redis: image: redis:alpine container_name: wallabag-redis restart: unless-stopped networks: web: external: true