version: '3' services: client: build: context: ./client dockerfile: ./Dockerfile.dev ports: - 4200:4200 working_dir: /project volumes: - ./client:/project command: ng serve --host=0.0.0.0 --disable-host-check --port 4200 server: build: context: ./server dockerfile: ./Dockerfile.dev environment: docker: "true" DISPLAY_ERROR_DETAILS: "true" DATABASE_DEV_MODE: 1 DATABASE_CO_DRIVER: "pdo_pgsql" DATABASE_CO_HOST: "db" DATABASE_CO_PORT: 5432 DATABASE_CO_DBNAME: "anis_metamodel" DATABASE_CO_USER: "postgres" DATABASE_CO_PASSWORD: "postgres" DATA_PATH: "/data" ARCHIVE_FOLDER: "/ARCHIVE" LOGGER_NAME: "anis-metamodel" LOGGER_PATH: "php://stderr" LOGGER_LEVEL: "debug" SERVICES_URL: "http://localhost:5000" BASE_HREF: "/" SSO_AUTH_URL: "http://localhost:8180" SSO_REALM: "anis" SSO_CLIENT_ID: "anis-client" TOKEN_ENABLED: 0 TOKEN_JWKS_URL: "http://keycloak:8180/realms/anis/protocol/openid-connect/certs" TOKEN_ADMIN_ROLES: anis_admin,superuser RMQ_HOST: rmq RMQ_PORT: 5672 RMQ_USER: admin RMQ_PASSWORD: admin MATOMO_ENABLED: 0 MATOMO_SITE_ID: 1 MATOMO_TRACKER_URL: http://localhost:8888 ports: - 8080:80 volumes: - ./server:/project - ./conf-dev/dev-php.ini:/usr/local/etc/php/conf.d/dev-php.ini - ./conf-dev/init-keycloak.sh:/mnt/init-keycloak.sh - ./conf-dev/create-db.sh:/mnt/create-db.sh - ./data:/data services: image: python:3.8 environment: PYTHONPATH: "/project/src" FLASK_ENV: development DATA_PATH: /data SERVER_URL: http://server working_dir: /project ports: - 5000:5000 volumes: - ./services:/project - ./data:/data command: /bin/bash -c "source /project/venv/bin/activate && exec python src/anis_services/app.py" tasks: image: python:3.8 # stdin_open: true # tty: true # command: sleep infinity environment: PYTHONPATH: "/project/src" DATA_PATH: /data ARCHIVE_FOLDER: "/ARCHIVE" SERVER_URL: http://server RMQ_HOST: rmq RMQ_PORT: 5672 RMQ_USER: admin RMQ_PASSWORD: admin working_dir: /project volumes: - ./tasks:/project - ./data:/data command: /bin/bash -c "source /project/venv/bin/activate && exec python src/anis_tasks/app.py" keycloak: image: bitnami/keycloak:18 environment: KEYCLOAK_DATABASE_HOST: db KEYCLOAK_DATABASE_PORT: 5432 KEYCLOAK_DATABASE_NAME: keycloakdb KEYCLOAK_DATABASE_USER: keycloak KEYCLOAK_DATABASE_PASSWORD: keycloak KEYCLOAK_DATABASE_SCHEMA: public KEYCLOAK_ADMIN_USER: admin KEYCLOAK_ADMIN_PASSWORD: admin KEYCLOAK_BIND_ADDRESS: 0.0.0.0 KEYCLOAK_HTTP_PORT: 8180 KEYCLOAK_EXTRA_ARGS: -Dkeycloak.import=/tmp/keycloak-anis-realm.json ports: - 8180:8180 volumes: - ./conf-dev/keycloak-anis-realm.json:/tmp/keycloak-anis-realm.json db: image: postgres:15 environment: POSTGRES_PASSWORD: "postgres" volumes: - pgdata:/var/lib/postgresql/data - ./conf-dev/data_test.sql:/sql/data_test.sql - ./conf-dev/init-postgres.sh:/docker-entrypoint-initdb.d/init-postgres.sh rmq: image: rabbitmq:3-management environment: RABBITMQ_DEFAULT_USER: admin RABBITMQ_DEFAULT_PASS: admin ports: - 15672:15672 mailer: image: djfarrelly/maildev ports: - 1080:80 mariadb: image: mariadb command: --max-allowed-packet=64MB volumes: - mariadata:/var/lib/mysql - ./conf-dev/matomo.sql:/docker-entrypoint-initdb.d/matomo.sql environment: - MARIADB_ROOT_PASSWORD=maria - MARIADB_DATABASE=matomodb - MARIADB_USER=matomo - MARIADB_PASSWORD=matomo matomo: image: matomo volumes: - ./conf-dev/matomo-config.ini.php:/var/www/html/config/config.ini.php - matomo:/var/www/html environment: - MATOMO_DATABASE_HOST=mariadb - MATOMO_DATABASE_ADAPTER=mysql - MATOMO_DATABASE_TABLES_PREFIX=matomo_ - MATOMO_DATABASE_USERNAME=matomo - MATOMO_DATABASE_PASSWORD=matomo - MATOMO_DATABASE_DBNAME=matomodb ports: - 8888:80 volumes: pgdata: mariadata: matomo: