-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathdocker-compose.test.yaml
52 lines (42 loc) · 1.52 KB
/
docker-compose.test.yaml
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
include:
- ./external-api/docker-compose.external-api.yaml
services:
web1:
extends:
file: docker-compose.common.yaml
service: web
ports:
- 3000:3000
depends_on:
db:
condition: service_healthy
#restart: true # se o container deve ser reiniciado se caso a dependência falhar
db:
image: mysql:8.0.30-debian
#restart: on-failure:5 | always
# poderia usar um env_file para trazer mais dinamismo
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: my_database
tmpfs:
- /var/lib/mysql
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
interval: 30s # interval - com que frequência o healthcheck é executado
timeout: 5s # timeout - quanto tempo esperar antes de considerar o healthcheck falhado
retries: 5 # retries - número de tentativas antes de considerar o container como falhado
start_period: 10s # start_period - tempo de espera antes de iniciar o healthcheck
#ou seja, o healthcheck será executado a cada 30 segundos, com um timeout de 5 segundos, 5 tentativas e um tempo de espera inicial de 10 segundos
# depends_on:
# - xpto
# networks:
# - external-api_default
# xpto: apenas para exemplificar o uso do restart no container do mysql
# image: xpto:latest
# networks:
# external-api_default:
# external: true
# para host.docker.internal
# mac ou linux (/etc/hosts)
# windows (C:\Windows\System32\drivers\etc\hosts)
# 127.0.0.1 host.docker.internal