version: "3.7" services: app_proxy: environment: APP_HOST: invoice-ninja_nginx_1 APP_PORT: 80 PROXY_AUTH_WHITELIST: "/api/*" nginx: image: nginx:1.21-alpine@sha256:686aac2769fd6e7bab67663fd38750c135b72d993d0bb0a942ab02ef647fc9c3 init: true restart: on-failure volumes: - ${APP_DATA_DIR}/config/nginx.conf:/etc/nginx/conf.d/nginx.conf:ro - ${APP_DATA_DIR}/data/public:/var/www/app/public:ro depends_on: - app app: image: invoiceninja/invoiceninja:5.10.20@sha256:441198a2d3befe03cefbb6b136965d366a6b1e79a9b315082394407c22ebfcba # We're forced to run user/group 1500 # More detail here: https://github.com/invoiceninja/dockerfiles/blob/ad3ffc227d63740330f761dad6e8c87768577847/alpine/5/Dockerfile#L70-L80 user: "1500:1500" restart: on-failure volumes: - ${APP_DATA_DIR}/data/public:/var/www/app/public:rw,delegated - ${APP_DATA_DIR}/data/storage:/var/www/app/storage:rw,delegated environment: APP_URL: "http://${APP_DOMAIN}" APP_KEY: "${APP_KEY:-unset}" REQUIRE_HTTPS: "false" DB_HOST: invoice-ninja_db_1 DB_DATABASE: invoiceninja DB_USERNAME: invoiceninja DB_PASSWORD: moneyprintergobrrr IN_USER_EMAIL: "admin@example.com" IN_PASSWORD: $APP_PASSWORD depends_on: - db db: image: mariadb:10.5.12@sha256:dfcba5641bdbfd7cbf5b07eeed707e6a3672f46823695a0d3aba2e49bbd9b1dd user: "1000:1000" restart: on-failure volumes: - ${APP_DATA_DIR}/data/db:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: invoiceninja MYSQL_USER: invoiceninja MYSQL_PASSWORD: moneyprintergobrrr MYSQL_DATABASE: invoiceninja