Files
qmi-cloud/docker-compose.yml
2025-02-12 11:40:19 +01:00

159 lines
4.5 KiB
YAML

version: '3.7'
volumes:
redisdb:
mongodb:
networks:
backend:
driver: bridge
ipam:
config:
- subnet: 10.7.0.0/16
secrets:
qmicloud_config:
file: ./secrets.json
services:
redis:
image: redis
platform: linux/amd64
container_name: qmi-cloud-redis
volumes:
- redisdb:/data
entrypoint: redis-server --appendonly yes
restart: on-failure
networks:
- backend
mongo:
image: mongo:4.2
platform: linux/amd64
container_name: qmi-cloud-mongo
restart: on-failure
volumes:
- mongodb:/data/db
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: example
networks:
- backend
ports:
- "27017:27017"
app:
build:
context: .
dockerfile: Dockerfile
image: qlikgear/qmi-cloud-app:latest
container_name: qmi-cloud-app
restart: on-failure
secrets:
- source: qmicloud_config
target: config.json
environment:
- BACKEND_LOGS_URL=http://host.docker.internal:8888/
- QMI_MONGO_URL=http://host.docker.internal:8081/
- GUACA_PASSWORD=acupoftea1234!
- HOSTNAME_URL=http://localhost:3000
- REDIS_URL=redis://redis
- MONGO_URI=mongodb://root:example@mongo/qmicloud?authSource=admin
- CERT_PFX_FILENAME=
- CERT_PFX_PASSWORD=
command:
- ./server/wait-for.sh
- --timeout=20
- mongo:27017
- --
- sh
- -c
- npm run start:dev
volumes:
# -- Dev only volumes
- ./server:/app/server
- ./dist:/app/dist
# -------------------
- ../qmi-cloud-provisions:/provisions
- ./logs:/logs
- ./costexport:/app/costexport
- ./photos:/app/photos
#- ./config:/app/config
#- ./certs:/app/server/certs
depends_on:
- mongo
- redis
extra_hosts:
- "qmicloud-dev.qliktech.com:172.20.36.68"
- "host.docker.internal:host-gateway"
ports:
- "3000:3000"
- "3100:3100"
networks:
- backend
worker:
#build:
# context: .
# dockerfile: qmi-cloud-worker/Dockerfile
image: qlikgear/qmi-cloud-worker:latestdev
container_name: qmi-cloud-worker
restart: on-failure
environment:
- HOSTNAME_URL=http://localhost:3000
- REDIS_URL=redis://redis
- MONGO_URI=mongodb://root:example@mongo/qmicloud?authSource=admin
- PROJECT_PATH=%PWD%
- GIT_SCENARIOS=git::git@gitlab.com:qmi/qmi-cloud-scenarios.git
- GIT_TAG=dev
- SSHPATH=/Users/aor/.ssh
- DOCKERIMAGE_AZURE_POWERSHELL=mcr.microsoft.com/azure-powershell:4.2.0-ubuntu-18.04
- DOCKERIMAGE_TERRAFORM=qlikgear/terraform:1.3.5
command: "sh -c 'npm run start:dev'"
volumes:
# -- Dev only volumes
- ./qmi-cloud-worker:/app/worker
# -------------------
- ./logs:/logs
- /var/run/docker.sock:/home/docker.sock
extra_hosts:
- "qmicloud-dev.qliktech.com:172.20.36.68"
depends_on:
- mongo
- redis
networks:
- backend
mongo-express:
image: mongo-express:1.0.2
platform: linux/amd64
container_name: qmi-cloud-mongo-express
restart: on-failure
ports:
- 8081:8081
depends_on:
- mongo
environment:
ME_CONFIG_SITE_BASEURL: /mongo
ME_CONFIG_MONGODB_ENABLE_ADMIN: true
ME_CONFIG_MONGODB_SERVER: mongo
ME_CONFIG_MONGODB_PORT: 27017
ME_CONFIG_MONGODB_ADMINUSERNAME: root
ME_CONFIG_MONGODB_ADMINPASSWORD: example
ME_CONFIG_BASICAUTH_USERNAME: qlik
ME_CONFIG_BASICAUTH_PASSWORD: Qlik1234
networks:
- backend
dozzle:
image: amir20/dozzle:latest
platform: linux/amd64
volumes:
- /var/run/docker.sock:/var/run/docker.sock
ports:
- 8888:8080
environment:
DOZZLE_BASE: "/dockerlogs"
networks:
- backend