二进制dockers-compose
docker-compose
demo
version: '3.9'services:nginx:image: nginx:latestcontainer_name: nginx_containerports:- "82:80" # 映射宿主机的80端口到容器的80端口volumes:- /docker/compose-1/nginx/conf/nginx.conf:/etc/nginx/nginx.conf # 自定义Nginx配置文件- /docker/compose-1/nginx/html:/usr/share/nginx/html # 映射静态文件目录networks:- nginx-mysql-netmysql:image: mysql:latestcontainer_name: mysql_containerports:- "3308:3306" # 映射宿主机的80端口到容器的80端口environment:MYSQL_ROOT_PASSWORD: rootpassword # 设置MySQL root用户的密码MYSQL_DATABASE: mydatabase # 创建一个名为mydatabase的数据库volumes:- /docker/compose-1/mysql/mysql-data:/var/lib/mysql # 持久化MySQL数据networks:- nginx-mysql-netnetworks:nginx-mysql-net:driver: bridge
# 启动管理容器
docker-compose up # 会自动搜索当前路径下的 docker-compose.yml文件
docker-compose -f 指定文件 up
docker-compose up -d # 后台执行,一般我们看日志输出,不用这个docker-compose stop # 停止,不会删除容器和镜像
docker-compose down # 停止,并删除关联的容器
docker-compose start # 启动yml文件管理的容器
docker-compose ps # 正在运行的容器
docker-compose images # docker-compose管理的镜像docker-compose exec yml文件中写的service /bin/bash # 进入到容器内docker-compose up -d --build # 启动容器但是重新构建镜像,基于重新构建的镜像启动