Docker--Compose介绍(三)
Docker Compose介绍
Docker Compose是一个用来定义和运行复杂应用的Docker工具。使用Docker容器的应用,通常由多个容器组成。使用Docker Compose不再需要使用shell脚本来启动容器。
Compose 通过一个配置文件来管理多个Docker容器,在配置文件中,所有的容器通过services来定义,然后使用docker-compose脚本来启动,停止和重启应用,和应用中的服务以及所有依赖服务的容器。
docker-compose github
https://github.com/docker/compose
安装docker-compose
(1)下载文件
wget https://github.com/docker/compose/releases/download/v2.6.0/docker-compose-linux-x86_64
(2)移动文件
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
(3)赋予可执行权限
chmod +x /usr/local/bin/docker-compose
(4)创建软链
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
(5)查看版本
docker-compose --version
创建docker-compose文件
docker-compose是docker容器的编排工具
vim docker-compose.yml //编写.yml文件,写入以下内容
version: "3" //指定语法的格式的版本
services: //定义服务
nginx: //服务的名称
container_name: web-nginx //容器的名称
image: nginx-202206 //所使用的镜像
restart: always //随docker服务的启动而启动
ports:
- 9090:80 //映射的端口
volumes:
- /root/compose/webserver:/usr/share/nginx/html
//本地与容器挂载的目录
运行 docker-compose
docker-compose up -d
停止docker-compose
docker-compose stop
使用"-f"选项来指定yml文件启动文件中定义的容器
docker-compose -f /mnt/docker-compose.yml up -d
查看运行的容器
docker ps
创建测试网页
echo "compose" >/root/compose/webserver/index.html
访问测试
[root@localhost webserver]# curl 127.0.0.1:9090
compose
compose+dockerfile构建镜像
(1)创建docker-compose 文件
[root@localhost mnt]# cat docker-compose.yml
version: "3"
services:
nginx:
build: .
container_name: webnginx
image: nginx-20220620
restart: always
ports:
- 9090:80
volumes:
- /root/compose/webserver:/usr/share/nginx/html
(2)创建Dockerfile 文件
[root@localhost mnt]# cat Dockerfile
FROM nginx-202206
COPY ./hello.html /usr/share/nginx/html
(3)docker-compose 结合 dockerfile文件生成镜像
[root@localhost mnt]# docker-compose build
(4)运行docker-compose
[root@localhost mnt]# docker-compose up -d
(5)查看运行容器
[root@localhost mnt]# docker-compose ps
NAME COMMAND SERVICE STATUS PORTS
webnginx "/docker-entrypoint.…" nginx running 0.0.0.0:9090->80/tcp, :::9090->80/tcp
(6)访问测试
[root@localhost webserver]# echo "compose+dockerfile" > index.html
[root@localhost webserver]# pwd
/root/compose/webserver
[root@localhost webserver]# curl 192.168.100.95:9090
compose+dockerfile
Docker Compose 常用命令
docker-compose up -d 构建、创建、启动相关容器;-d表示在后台运行
docker-compose stop 停止所有相关容器
docker-compose ps 列出所有容器信息
docker-compose logs 查看服务日志输出
docker-compose build 构建或者重新构建服务
docker-compose start webnginx 启动指定服务已存在的容器
docker-compose stop webnginx 停止已运行的服务的容器
docker-compose rm webnginx 删除指定服务的容器
docker-compose kill webnginx 发送 SIGKILL 信号来停止指定服务的容器
docker-compose run webnginx bash 在容器服务上执行一个命令
Docker Compose官方文档
https://docs.docker.com/compose/reference/
相关文章
- 宝塔Docker部署RSShub
- centos7使用 Docker Engine部署gitlab
- Jenkins+Docker 实现一键自动化部署项目!步骤齐全,少走坑路
- Docker容器实战二:功能组件
- docker离线安装部署_docker官方中文文档
- Docker安装docker-compose插件
- spring cloud eureka docker多网卡ip注册异常
- 【Docker】基于Rancher快速部署docker容器管理平台
- 【Docker学习系列】Docker学习3-docker的run命令干了什么?docker为什么比虚拟机快?
- Docker服务的停止命令(systemctl stop docker)
- Docker服务的重启服务命令(systemctl restart docker)
- Docker服务的搜索镜像命令(docker search 镜像名称)
- Docker删除容器命令(docker rm)
- 【Docker 系列】docker 学习十一,docker 总结和面试题整理
- Docker从入门到精通(三)
- 使用 Docker Hub 完美地存储 Helm 图表实战
- Docker容器的重启策略及docker run的–restart选项详解程序员
- Docker搭建Redis服务器步骤详解(dockerredis)
- Docker-cgroup介绍
- Docker-镜像介绍
- Docker 1.12:游戏改变者
- 的docker容器创建并使用Docker容器启动Redis数据库(创建并启动名为redis)