-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
97 lines (92 loc) · 3.8 KB
/
docker-compose.yml
File metadata and controls
97 lines (92 loc) · 3.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
services:
smtp-mailpit:
profiles: [dev, test, demo]
network_mode: service:codexgo
container_name: ${CODEXGO_DEV_SMTP_MAILPIT_CONTAINER_NAME}
restart: ${CODEXGO_DEV_SMTP_MAILPIT_CONTAINER_RESTART}
image: axllent/mailpit
environment:
MP_SMTP_AUTH_ALLOW_INSECURE: true
MP_SMTP_AUTH_ACCEPT_ANY: true
broker-rabbitmq:
container_name: ${CODEXGO_BROKER_RABBITMQ_CONTAINER_NAME}
restart: ${CODEXGO_BROKER_RABBITMQ_CONTAINER_RESTART}
image: rabbitmq:management
environment:
RABBITMQ_DEFAULT_USER: ${CODEXGO_BROKER_RABBITMQ_ADMIN_USERNAME}
RABBITMQ_DEFAULT_PASS: ${CODEXGO_BROKER_RABBITMQ_ADMIN_PASSWORD}
ports:
- ${CODEXGO_BROKER_RABBITMQ_AMQP_PORT}:5672
- ${CODEXGO_BROKER_RABBITMQ_ADMIN_PORT}:15672
healthcheck:
test: rabbitmq-diagnostics -q status
interval: 12s
timeout: 12s
retries: 12
database-mongodb:
container_name: ${CODEXGO_DATABASE_MONGODB_CONTAINER_NAME}
restart: ${CODEXGO_DATABASE_MONGODB_CONTAINER_RESTART}
image: mongo
command: mongod --quiet --logpath /dev/null
environment:
MONGO_INITDB_ROOT_USERNAME: ${CODEXGO_DATABASE_MONGODB_ROOT_USERNAME}
MONGO_INITDB_ROOT_PASSWORD: ${CODEXGO_DATABASE_MONGODB_ROOT_PASSWORD}
volumes:
- database-mongodb:/data/db
ports:
- ${CODEXGO_DATABASE_MONGODB_PORT}:27017
healthcheck:
test: echo 'db.runCommand({serverStatus:1}).ok' | mongosh admin -u ${CODEXGO_DATABASE_MONGODB_ROOT_USERNAME} -p ${CODEXGO_DATABASE_MONGODB_ROOT_PASSWORD} --quiet | grep 1
interval: 12s
timeout: 12s
retries: 12
codexgo:
container_name: ${CODEXGO_CONTAINER_NAME}
restart: ${CODEXGO_CONTAINER_RESTART}
image: ${CODEXGO_CONTAINER_IMAGE_TAG}
pull_policy: never
build:
context: ..
dockerfile: deployments/Dockerfile
target: ${CODEXGO_CONTAINER_IMAGE_BUILD_TARGET}
command: ${CODEXGO_CONTAINER_START}
environment:
CODEXGO_BROKER_RABBITMQ_URI: "amqp://${CODEXGO_BROKER_RABBITMQ_ADMIN_USERNAME}:${CODEXGO_BROKER_RABBITMQ_ADMIN_PASSWORD}@broker-rabbitmq:5672"
CODEXGO_BROKER_RABBITMQ_NAME: ${CODEXGO_BROKER_RABBITMQ_NAME}
CODEXGO_DATABASE_MONGODB_URI: "mongodb://${CODEXGO_DATABASE_MONGODB_ROOT_USERNAME}:${CODEXGO_DATABASE_MONGODB_ROOT_PASSWORD}@database-mongodb:27017"
CODEXGO_DATABASE_MONGODB_NAME: ${CODEXGO_DATABASE_MONGODB_NAME}
CODEXGO_DATABASE_BADGERDB_DSN: ${CODEXGO_DATABASE_BADGERDB_DSN}
CODEXGO_SMTP_HOST: ${CODEXGO_SMTP_HOST}
CODEXGO_SMTP_PORT: ${CODEXGO_SMTP_PORT}
CODEXGO_SMTP_USERNAME: ${CODEXGO_SMTP_USERNAME}
CODEXGO_SMTP_PASSWORD: ${CODEXGO_SMTP_PASSWORD}
CODEXGO_JWT_SECRET_KEY: ${CODEXGO_JWT_SECRET_KEY}
CODEXGO_SERVER_GIN_HOSTNAME: ${CODEXGO_SERVER_GIN_HOSTNAME}
CODEXGO_SERVER_GIN_PORT: ${CODEXGO_SERVER_GIN_PORT}
CODEXGO_SERVER_GIN_URL: ${CODEXGO_SERVER_GIN_URL}
CODEXGO_SERVER_GIN_MODE: ${CODEXGO_SERVER_GIN_MODE}
CODEXGO_SERVER_GIN_ALLOWED_HOSTS: ${CODEXGO_SERVER_GIN_ALLOWED_HOSTS}
CODEXGO_SERVER_GIN_COOKIE_SECRET_KEY: ${CODEXGO_SERVER_GIN_COOKIE_SECRET_KEY}
CODEXGO_SERVER_GIN_COOKIE_SESSION_NAME: ${CODEXGO_SERVER_GIN_COOKIE_SESSION_NAME}
volumes:
- ${CODEXGO_CONTAINER_VOLUME}
- codexgo-modules:/go/pkg/mod
ports:
- ${CODEXGO_SERVER_GIN_PORT}:${CODEXGO_SERVER_GIN_PORT}
- ${CODEXGO_DEV_RELOAD_AIR_PROXY_PORT}:${CODEXGO_DEV_RELOAD_AIR_PROXY_PORT}
- ${CODEXGO_DEV_SMTP_MAILPIT_WEBUI_PORT}:${CODEXGO_DEV_SMTP_MAILPIT_WEBUI_PORT}
depends_on:
broker-rabbitmq:
condition: service_healthy
database-mongodb:
condition: service_healthy
volumes:
database-mongodb:
name: ${CODEXGO_DATABASE_MONGODB_CONTAINER_VOLUME}
codexgo-logs:
name: codexgo-logs
codexgo-modules:
name: codexgo-modules
networks:
default:
name: codexgo