-
Notifications
You must be signed in to change notification settings - Fork 13
/
docker-compose.yml
121 lines (114 loc) · 3 KB
/
docker-compose.yml
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
version: "3.7"
services:
krakend_ce:
container_name: arch_krakend_ce
image: devopsfaith/krakend:watch
volumes:
- ./krakend:/etc/krakend
ports:
- "8080:8080"
command: ["run", "-d", "-c", "/etc/krakend/krakend.json"]
depends_on:
- fake_api
fake_api:
container_name: arch_fake_api
image: ghcr.io/lpereira/lwan:latest
volumes:
- ./data:/wwwroot
ports:
- "8000:8080"
mongo:
image: mongo:latest
container_name: arch_mongodb
restart: always
environment:
- MONGO_INITDB_ROOT_USERNAME=root
- MONGO_INITDB_ROOT_PASSWORD=root
auth-go:
container_name: arch_auth_go
image: febrihidayan/go-architecture-monorepo/auth
build:
context: .
dockerfile: docker/auth/Dockerfile
environment:
HTTP_PORT: ':8083'
RPC_PORT: ':9083'
RPC_USER: 'user-go:9084'
RPC_NOTIFICATION: 'notification-go:9086'
MONGODB_USERNAME: root
MONGODB_PASSWORD: root
MONGODB_NAME: arch_auth
MONGODB_HOST: 'mongo'
MONGODB_PORT: '27017'
JWT_TOKEN_JTI: mnb23vcsrt756yuiomnbvcx98ertyuiop
JWT_EXPIRED: 60
APP_URL: "http://domain.com"
APP_SECRET_KEY: "key for AES-256"
ports:
- '8083:8083'
- '9083:9083'
user-go:
container_name: arch_user_go
image: febrihidayan/go-architecture-monorepo/user
build:
context: .
dockerfile: docker/user/Dockerfile
environment:
HTTP_PORT: ':8084'
RPC_PORT: ':9084'
RPC_AUTH: 'auth-go:9083'
RPC_STORAGE: 'storage-go:9085'
MONGODB_USERNAME: root
MONGODB_PASSWORD: root
MONGODB_NAME: arch_user
MONGODB_HOST: 'mongo'
MONGODB_PORT: '27017'
ports:
- '8084:8084'
- '9084:9084'
storage-go:
container_name: arch_storage_go
image: febrihidayan/go-architecture-monorepo/storage
build:
context: .
dockerfile: docker/storage/Dockerfile
environment:
HTTP_PORT: ':8085'
RPC_PORT: ':9085'
MONGODB_USERNAME: root
MONGODB_PASSWORD: root
MONGODB_NAME: arch_storage
MONGODB_HOST: 'mongo'
MONGODB_PORT: '27017'
MAX_UPLOAD_FILE: 15
AWS_ACCESS_KEY: "key"
AWS_ACCESS_SECRET: "secret"
AWS_BUCKET: "bucket"
AWS_DIRECTORY: "test"
AWS_REGION: "ap-southeast-1"
ports:
- '8085:8085'
- '9085:9085'
notification-go:
container_name: arch_notification_go
image: febrihidayan/go-architecture-monorepo/notification
build:
context: .
dockerfile: docker/notification/Dockerfile
environment:
HTTP_PORT: ':8086'
RPC_PORT: ':9086'
RPC_USER: 'user-go:9084'
MONGODB_USERNAME: root
MONGODB_PASSWORD: root
MONGODB_NAME: arch_notification
MONGODB_HOST: 'mongo'
MONGODB_PORT: '27017'
GOOGLE_FIREBASE_PATH: "data/config/firebase_key.json"
MAILGUN_FROM_DOMAIN: ""
MAILGUN_FROM_NAME: ""
MAILGUN_DOMAIN: ""
MAILGUN_SECRET: ""
ports:
- '8086:8086'
- '9086:9086'