version: '3.3' services: app: image: fireflyiii/core:${firefly_version:-latest} volumes: - firefly_iii_upload:/var/www/html/storage/upload env_file: .env environment: - APP_KEY=${APP_KEY:-SomeRandomStringOf32CharsExactly} - MAIL_PASSWORD=${MAIL_PASSWORD:-null} - STATIC_CRON_TOKEN=${STATIC_CRON_TOKEN:-SomeRandomStringOf32CharsExactly} - VIRTUAL_HOST=firefly.jfreudenberger.de # the domain where the service should be reached - VIRTUAL_PORT=8080 # the port the service listens in the container - LETSENCRYPT_HOST=firefly.jfreudenberger.de # the same domain as VIRTUAL_HOST; this enables ssl depends_on: - db networks: - firefly - webproxy db: image: postgres:${postgres_version:-14} environment: - POSTGRES_USER=firefly - POSTGRES_PASSWORD=firefly - POSTGRES_DB=firefly volumes: - firefly_iii_db:/var/lib/postgresql/data networks: - firefly cron: image: alpine command: sh -c "echo \"0 3 * * * wget -qO- http://app:8080/api/v1/cron/${STATIC_CRON_TOKEN:-SomeRandomStringOf32CharsExactly}\" | crontab - && crond -f -L /dev/stdout" networks: - firefly volumes: firefly_iii_upload: firefly_iii_db: networks: firefly: webproxy: external: name: webproxy