version: '3.7' x-shared_environment: &shared_environment LOG_LEVEL: ${LOG_LEVEL:-info} services: service: image: 0day-tomorrow:latest build: context: ./0day.tomorrow environment: <<: *shared_environment volumes: - /secrets/0day:/certificates ports: - '8080:8080' # user: '0' # uncomment to run as root for testing purposes even though Dockerfile defines 'vapor' user. command: ["serve", "--env", "production", "--hostname", "0.0.0.0", "--port", "8080"] restart: unless-stopped permissions: image: 0day-permissions:latest build: context: ./0day.permissions environment: <<: *shared_environment ports: - '8081:8081' # user: '0' # uncomment to run as root for testing purposes even though Dockerfile defines 'vapor' user. command: ["serve", "--env", "production", "--hostname", "0.0.0.0", "--port", "8081"] restart: unless-stopped db: image: postgres restart: always environment: - POSTGRES_USER=vapor - POSTGRES_PASSWORD=vapor volumes: - db:/var/lib/postgresql/data volumes: db: