Docker Compose
背景说明
当前随着互联网业务越来越复杂,越来越多的业务被拆分,所以现在微服务的理念越来越受欢迎,当前支撑微服务部署的就是k8s和docker,现在很多组建都开始docker,如mysql,redis等等,那如何管理这么多的docker镜像?怎么方便得启动这些服务?这就是docker-compse工具诞生的背景
安装
通过pip工具安装
或者
安装完成后查看版本确认是否安装成功
一个例子
下面看一个实际的例子,这个是通过docker-compose
来管理mysql
和redis
这两个docker服务
下载mysql和redis镜像
创建需要映射的目录
编写docker-compose.yml
写入如下内容, 注意volumes映射部分需要改成自己本机目录
docker-compose.yml文档说明
version
表示的是docker-compose的语法版本,不同的版本会有一些差异,具体看这里services
表示docker-compose需要管理的服务,在上面的例子中,有两个服务:mysql
和redis
下面对服务中使用到的关键词做个说明
image
表示需要启动的镜像名称,格式是REPOSITORY:TAG
ports
表示启动镜像后,需要映射的端口号,格式是host_port:container_port
, 等同与docker启动命令中的-p
, 如果有多个端口映射,那用多行表示environment
表示启动镜像后,需要传给容器的环境变量,等同于docker启动命令中的-e
volumes
表示启动镜像后,需要映射的路径地址,格式是host_path:container_path
, 等同于docker启动命令中的-v
常用命令
启动
docker-compose up
, 如果需要后台运行则加入-d
参数, docker-compose up -d
查看
docker-compose ps
, 查看命令和docker命令一样
关闭
docker-compose stop
, 也和docker停止命令一样
HELP
通过docker-compose -h
,这个万能命令查询所有能用的命令
Last updated
Was this helpful?