-
Notifications
You must be signed in to change notification settings - Fork 4
/
docker-compose.yml
108 lines (106 loc) · 2.51 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
# We specify the version of docker compose
version: "3.9"
# We specify the different services
services:
# The api
server:
# the build folder
image: server
build:
context: ./server
dockerfile: ./Dockerfile
container_name: server
# the ports to map
ports:
- 8082:8082
- 9229:9229
- 9230:9230
# start after the database
depends_on:
- db
- phpmyadmin
# The differents networks
networks:
- private
- public
# The client
client:
# the build folder
image: client
build:
context: ./client
dockerfile: ./Dockerfile
container_name: client
# the ports to map
ports:
- 3000:3000
# start after the database
depends_on:
- db
- phpmyadmin
# The differents networks
networks:
- public
# The machine learning server
#aiserver:
# the build folder
#image: aiserver
#build:
#context: ./ai-server
#dockerfile: ./Dockerfile
#container_name: aiserver
# the ports to map
#ports:
#- 8080:8080
# start after the database
#depends_on:
#- db
#- phpmyadmin
# The differents networks
#networks:
#- private
#- public
# The database
db:
# https://hub.docker.com/_/mysql
image: mysql:latest
container_name: db
# The differents networks
networks:
- private
# Ports
ports:
- "6033:3306"
# The shared folder
volumes:
- db-data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=root
# The database
phpmyadmin:
# https://hub.docker.com/_/phpmyadmin
image: phpmyadmin:latest
container_name: pma
restart: always
# The differents networks
networks:
- private
# start after the database
depends_on:
- db
# Links to the db
links:
- db
environment:
PMA_HOST: db
PMA_PORT: 3306
# Set up the port
ports:
- 30002:80
# We specify the different networks
networks:
public:
private:
# We specify the differents shared folders
volumes:
db-data: