infra/.deploy-infra/deploy-dev.yaml
Administrator dab2bde8d4 sentry
2022-10-10 20:26:48 +03:00

208 lines
4.6 KiB
YAML

version: "3.6"
services:
nginx:
image: mathwave/sprint-repo:sprint-infra-nginx-dev
networks:
- battleship-nginx
- sprint-nginx
- swarmpit-nginx
- exchange-nginx
- b-jokes-nginx
ports:
- "80:80"
- "443:443"
deploy:
mode: replicated
replicas: 1
restart_policy:
condition: any
placement:
constraints: [node.role == manager]
update_config:
parallelism: 1
order: start-first
postgres:
image: postgres:14-alpine
volumes:
- /sprint-data/postgres-data:/var/lib/postgresql/data
environment:
POSTGRES_PASSWORD: $DB_PASSWORD_DEV
ports:
- "5432:5432"
deploy:
mode: replicated
restart_policy:
condition: any
placement:
constraints: [node.role == manager]
update_config:
parallelism: 1
order: start-first
mongo:
image: mongo:6.0.2
volumes:
- /sprint-data/mongo:/data/db
environment:
MONGO_INITDB_ROOT_USERNAME: mongo
MONGO_INITDB_ROOT_PASSWORD: $MONGO_PASSWORD_DEV
ports:
- "27017:27017"
deploy:
mode: replicated
restart_policy:
condition: any
placement:
constraints: [node.role == manager]
update_config:
parallelism: 1
order: start-first
rabbitmq:
image: rabbitmq:3.10.7-management
ports:
- "5672:5672"
- "15672:15672"
environment:
RABBITMQ_DEFAULT_PASS: $RABBITMQ_PASSWORD_DEV
deploy:
mode: replicated
restart_policy:
condition: any
placement:
constraints: [node.role == manager]
update_config:
parallelism: 1
order: start-first
redis:
image: redis:alpine3.16
ports:
- "6379:6379"
command: redis-server --requirepass $REDIS_PASSWORD_DEV
deploy:
mode: replicated
restart_policy:
condition: any
update_config:
parallelism: 1
order: start-first
gitlab-runner:
image: mathwave/sprint-repo:gitlab-runner
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /sprint-data/gitlab:/etc/gitlab-runner
- /sprint-data:/sprint-data
environment:
GITLAB_REGISTRATION_TOKEN: $GITLAB_REGISTRATION_TOKEN
deploy:
mode: replicated
placement:
constraints: [node.role == manager]
restart_policy:
condition: any
update_config:
parallelism: 1
order: start-first
minio:
image: bitnami/minio:2022.10.8
volumes:
- minio_data:/data
environment:
MINIO_ROOT_USER: minioadmin
MINIO_ROOT_PASSWORD: $MINIO_PASSWORD_DEV
ports:
- "9000:9000"
- "9001:9001"
deploy:
mode: replicated
placement:
constraints: [node.role == manager]
restart_policy:
condition: any
update_config:
parallelism: 1
order: start-first
grafana:
image: grafana/grafana:9.1.7-ubuntu
volumes:
- /sprint-data/grafana:/var/lib/grafana
ports:
- "3000:3000"
deploy:
mode: replicated
placement:
constraints: [node.role == manager]
restart_policy:
condition: any
update_config:
parallelism: 1
order: start-first
memcached:
image: memcached:alpine3.16
ports:
- "11211:11211"
deploy:
resources:
limits:
memory: 64M
mode: replicated
placement:
constraints: [node.role == manager]
restart_policy:
condition: any
update_config:
parallelism: 1
order: start-first
sentry:
image: sentry:9.1.2
volumes:
- /sprint-data/sentry:/var/lib/sentry/files
environment:
SENTRY_SECRET_KEY: $SENTRY_SECRET_KEY_DEV
SENTRY_POSTGRES_HOST: pg.develop.sprinthub.ru
SENTRY_POSTGRES_PORT: 5432
SENTRY_DB_NAME: sentry
SENTRY_DB_USER: postgres
SENTRY_DB_PASSWORD: $DB_PASSWORD_DEV
SENTRY_REDIS_HOST: redis.develop.sprinthub.ru
SENTRY_REDIS_PORT: 6379
SENTRY_REDIS_DB: sentry
SENTRY_FILESTORE_DIR: /var/lib/sentry/files
SENTRY_MEMCACHED_HOST: memcached.develop.sprinthub.ru
SENTRY_MEMCACHED_PORT: 11211
deploy:
mode: replicated
placement:
constraints: [node.role == manager]
restart_policy:
condition: any
update_config:
parallelism: 1
order: start-first
volumes:
minio_data:
driver: local
networks:
net:
driver: overlay
battleship-nginx:
external: true
exchange-nginx:
external: true
sprint-nginx:
external: true
b-jokes-nginx:
external: true
swarmpit-nginx:
external: true