发现问题:
在docker-compose配置network的name名称时,出现报错,究其根本,发现是docker-compose的版本太低,因此安装高版本docker-compose
networks:
test_net:
name: test_net
driver: bridge
ipam:
config:
- subnet: "172.200.0.0/16
[root@k8s-node01 docker-compose]# docker-compose up -d
ERROR: The Compose file './docker-compose.yml' is invalid because:
networks.test_net value Additional properties are not allowed ('name' was unexpected)
1.安装高版本docker-ce
因为高版本docker里面已经有docker-compose
[root@k8s-node01 docker-compose]# docker -v
Docker version 18.06.3-ce, build d7080c1
[root@k8s-node01 docker-compose]#
安装23.0.6
[root@k8s-node01 ~]# docker -v
Docker version 23.0.6, build ef23cbc
[root@k8s-node01 ~]#
[root@k8s-node01 ~]# docker --help |grep compose
compose* Docker Compose (Docker Inc., v2.17.3)
[root@k8s-node01 ~]#
2.修改docker compose为docker-compose
[root@k8s-node01 ~]# docker compose version
Docker Compose version v2.17.3
[root@k8s-node01 ~]#
[root@k8s-node01 ~]# whereis docker
docker: /usr/bin/docker /etc/docker /usr/libexec/docker /usr/share/man/man1/docker.1.gz
[root@k8s-node01 ~]#
[root@k8s-master docker-compose]# vim /usr/bin/docker-compose
#!/bin/bash
docker compose $@
[root@k8s-node01 ~]# chmod +x /usr/bin/docker-compose
[root@k8s-node01 ~]#
3.测试
[root@k8s-node01 ~]# docker-compose version
Docker Compose version v2.17.3
[root@k8s-node01 ~]#
[root@k8s-node01 docker-compose]# cat docker-compose.yml
version: "3"
services:
mysql:
container_name: mysql
image: mysql:latest
restart: always
ports:
- 3306:3306
environment:
MYSQL_ROOT_PASSWORD: AAAaaa111.
volumes:
- /root/mysql/conf/:/etc/mysql/
- /root/mysql/mysql_data/:/var/lib/mysql/
networks:
- test_net
#########################################
networks:
test_net:
name: test_net
driver: bridge
ipam:
config:
- subnet: "172.200.0.0/16"
[root@k8s-node01 docker-compose]# docker-compose up -d
[+] Running 13/13
✔ mysql 12 layers [⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿] 0B/0B Pulled 24.5s
✔ 72a69066d2fe Pull complete 12.6s
✔ 93619dbc5b36 Pull complete 12.7s
✔ 99da31dd6142 Pull complete 13.1s
✔ 626033c43d70 Pull complete 13.4s
✔ 37d5d7efb64e Pull complete 13.5s
✔ ac563158d721 Pull complete 15.2s
✔ d2ba16033dad Pull complete 15.4s
✔ 688ba7d5c01a Pull complete 15.5s
✔ 00e060b6d11d Pull complete 22.6s
✔ 1c04857f594f Pull complete 22.7s
✔ 4d7cfa90e6ea Pull complete 22.8s
✔ e0431212d27d Pull complete 23.0s
[+] Running 2/2
✔ Network test_net Created 0.2s
✔ Container mysql Started 1.1s
[root@k8s-node01 docker-compose]# docker network ls
NETWORK ID NAME DRIVER SCOPE
306fb1ecf554 bridge bridge local
a1be3f9eaf8f host host local
3526b69f699c none null local
aaebf2ac9eed test_net bridge local
[root@k8s-node01 docker-compose]#