[Docker compose][에러] docker-compose.yml: services.mysql.networks.0 must be a string
mysql 이라는 서비스에는 default network가 아닌 별도의 커스텀 네트워크와 고정 서브넷IP를 연결해주기 위해서 docker-compose.yml을 수정하였었음.
그래서 도커 컴포즈 파일에 mysql 서비스를 작성하고 docker compose up -d 명령어로 도커를 실행할 시 생긴 에러메시지.
1
2
docker-compose.yml: services.mysql.networks.0 must be a string
아래와 같이 작성한 docker-compose.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
mysql:
image: mysql:5.7
container_name: mysqldb
volumes:
- mydb_mysql:/var/lib/mysql
restart: always
environment:
MYSQL_DATABASE: mysql
MYSQL_ROOT_PASSWORD: mysql_root_pwd
MYSQL_USER: mysql_user
MYSQL_PASSWORD: mysql_pwd
networks:
- backend_network:
ipv4_address: "172.20.0.10"
networks:
backend_network:
name: my_backend_network
ipam:
driver: default
config:
- subnet: "172.20.0.0/24"
gateway: "172.20.0.1"
도커의 작성 문법에 어긋남. 아래 예시는 도커 문법에 맞는 작성 예시.
' - ' 을 지운다.
1
2
3
networks:
backend_network:
ipv4_address: "172.18.111.1"
아래 ipv4_address를 지정해주는 란을 넣지 않으면 그대로 ' - ' 을 써도 된다.
1
2
networks:
- backend_network
https://docs.docker.com/compose/compose-file/compose-file-v3/#network-configuration-reference https://docs.docker.com/compose/networking/ https://docs.docker.com/compose/compose-file/05-services/#links https://docs.docker.com/compose/compose-file/06-networks/
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.

