Docker学习笔记十:docker Compose

简介: Docker学习笔记十:docker Compose

大家好,我是阿萨。前几天学会了启动多个容器来达成自己的目标。今天学习docker compose。


Compose是Docker的服务编排工具。用来构建基于Docker的复杂应用。Compose通过YAML格式的配置文件来管理多个Docker容器。主要适用于组合多个容器进行开发的场景。


一、Docker Compose环境安装。


四步走策略:


1.下载docker compose

sudo curl -L “ https://github.com/docker/compose/releases/download/1.25.0/docker-compose-( u n a m e − s ) − (uname -s)-(uname−s)−(uname -m)” -o /usr/local/bin/docker-compose

2.添加可执行权限

sudo chmod +x /usr/local/bin/docker-compose


3.将文件copy到 /usr/bin/目录下

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose


4.查看版本

docker-compose --version

搞定。


二、YAML文件格式简介


YAML(docker- compose.yml)类似XML。通过缩进表示具体数据结构,连续的项目通过-表示,键值对用:分割。数组用[]表示。hash用{}表示。

YAML格式文件注意事项:

1. 不能用Tab缩进,必须用空格。

2. 开头缩进2个空格。

3. 冒号,逗号,减号后缩进一个空格。

4. 注释用#。

5. 特殊字符用单引号括起来。

6. 布尔值用双引号括起来。


三、YAML配置的常用字段含义。


1. build 指定dockerfile的名字。

2. dockerfile 构建镜像上下文路径。

3. context dockerfile的路径或者指向git仓库的url地址。

4. image 制定镜像。

5. command 执行命令,覆盖默认命令。

6. container name 容器名称。

7. deploy 指定部署和运行服务想换配置。

8. environment 添加环境变量.

9. networks 加入网络。

10. ports 暴露容器端口。 端口不能低于60.

11. volumes 挂载宿主机路径或命令卷。

12. restart 重启策略。

13. hostname 容器主机名。


四、Docker Compose 常见命令


1. docker-compose up 创建和启动容器。

2. docker-compose ps 列出容器。

3. docker-compose build 重新构建服务。

4. docker-compose exec 在容器里执行命令。

5. docker-compose scale 指定一个服务容器的启动数量。

6. docker-compose top 显示容器进程。

7. docker-compose logs 查看容器输出。

8. docker-compose down 删除容器

9. docker-compose stop/start/restart 停止,启动,重启服务。


五、docker compose 文件结构示例。



相关文章
|
安全 网络安全 开发者
Docker学习笔记(一):Docker命令总结
本文介绍了Docker的基本概念、优点以及常用命令。Docker是一个开源的应用容器引擎,它通过容器打包应用程序及其依赖项,实现快速部署和迁移。主要优点包括轻量级、可移植性、易于管理、安全性和开源性。文章还区分了镜像和容器的概念,并提供了构建镜像、查看容器、运行容器、停止和删除容器等常用Docker命令的示例。
514 0
|
Docker Windows Python
Windows-Docker学习笔记(一)
本文介绍了Windows环境下Docker的安装与使用方法。首先通过链接下载Windows版本的Docker,然后按步骤配置:启用Windows功能、设置默认WSL版本为2,并检查Docker及其组件是否正常工作。接着详细列出了Docker的基础命令及其用法,包括搜索、下载镜像、管理容器等。同时介绍了Dockerfile的编写方法及其构建过程,以及docker-compose.yml文件的用途。最后提供了运行和管理容器的具体示例。
Windows-Docker学习笔记(一)
|
前端开发 jenkins 持续交付
jenkins学习笔记之二十:docker in docker运行pipeline
jenkins学习笔记之二十:docker in docker运行pipeline
|
jenkins Java 持续交付
jenkins学习笔记之十九:Docker安装jenkins master及动、静态配置slave
jenkins学习笔记之十九:Docker安装jenkins master及动、静态配置slave
|
Kubernetes Ubuntu Linux
docker学习笔记
docker学习笔记
262 0
|
Kubernetes 调度 Docker
Ubantu docker学习笔记(十一)k8s基本操作
Ubantu docker学习笔记(十一)k8s基本操作
|
Prometheus 监控 Cloud Native
Ubantu docker学习笔记(九)容器监控 自带的监控+sysdig+scope+cAdvisor+prometheus
Ubantu docker学习笔记(九)容器监控 自带的监控+sysdig+scope+cAdvisor+prometheus
|
存储 应用服务中间件 nginx
Ubantu docker学习笔记(八)私有仓库
Ubantu docker学习笔记(八)私有仓库
|
网络协议 Docker 容器
Ubantu docker学习笔记(七)容器网络
Ubantu docker学习笔记(七)容器网络
|
Docker 容器
Ubantu docker学习笔记(六)容器数据卷——补充实验
Ubantu docker学习笔记(六)容器数据卷——补充实验

热门文章

最新文章