此处将为大家介绍关于docker-compose仅适用于某些容器的详细内容,并且为您解答有关dockercompose适用于什么场景的相关问题,此外,我们还将为您介绍关于AspNetCore容器化(D
此处将为大家介绍关于docker-compose 仅适用于某些容器的详细内容,并且为您解答有关docker compose适用于什么场景的相关问题,此外,我们还将为您介绍关于AspNetCore容器化(Docker)部署(三) —— Docker Compose容器编排、Docker - 03 编排容器 Docker Compose 指令速查表、Docker Compose 版本过高(Docker 版本不匹配),降低 docker-compose 版本、DOCKER 学习笔记4 认识DockerCompose 多容器编排的有用信息。
本文目录一览:- docker-compose 仅适用于某些容器(docker compose适用于什么场景)
- AspNetCore容器化(Docker)部署(三) —— Docker Compose容器编排
- Docker - 03 编排容器 Docker Compose 指令速查表
- Docker Compose 版本过高(Docker 版本不匹配),降低 docker-compose 版本
- DOCKER 学习笔记4 认识DockerCompose 多容器编排
docker-compose 仅适用于某些容器(docker compose适用于什么场景)
我有一个docker-compose.yml
包含几个容器的。其中三个用于我的应用程序(客户端、服务器和数据库),其余用于各种开发工具(例如
psql、npm、manage.py 等)。当我这样做时,docker-composeup
所有这些都开始了,但我只希望三个主要的开始。由于我已经指定了链接,我可以从这三个开始,docker-compose upclient
但输出只来自那个容器。那么,有没有办法执行以下操作之一:
- 告诉 docker-compose 应该由哪些容器启动
docker-compose up
- 从所有链接的容器中获取输出
docker-compose up client
答案1
小编典典您可以使用以下方法启动容器:
$ docker-compose up -d client
这将在后台运行容器,并且可以从
$ docker-compose logs
它将包含所有已启动的容器
AspNetCore容器化(Docker)部署(三) —— Docker Compose容器编排
一.前言
上一篇部署了一个最基础的helloworld应用,创建了两个容器和一个network,还算应付得过来。
如果该应用继续引入mysql、redis、job等若干服务,到时候发布一次得工作量之大就可想而知了,这时候就需要用到Docker Compose。
Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。使用Compose,可以使用YAML文件来配置应用程序的服务,然后使用一条命令就可以从配置中创建并启动所有服务。
Docker Compose概述及命令使用 https://docs.docker.com/compose/reference/overview/
二.安装Compose
Windows下安装Docker Desktop时已经附带安装了Docker Compose
PS C:\Users\Administrator> docker-compose version
docker-compose version 1.23.2, build 1110ad01
docker-py version: 3.6.0
CPython version: 3.6.6
OpenSSL version: OpenSSL 1.0.2o 27 Mar 2018
Linux下需要自行安装
root@VM-16-9-ubuntu:~# apt install docker-compose
三.使用Compose
1.编排服务
在解决方案下创建docker-compose.yml文件
version: ''3.4''
services:
helloworld:
image: helloworld:v2.0
build: #镜像构建
context: . #工作目录
dockerfile: HelloWorld/Dockerfile #Dockerfile位置
environment: #环境变量
- ASPNETCORE_ENVIRONMENT=Development
ports: #端口映射
- "81:80"
container_name: netcore_helloworld #容器名
deploy:
restart_policy: #重启策略
condition: on-failure
delay: 5s
max_attempts: 3
networks: #指定network
- default
- newbridge
mynginx:
image: mynginx:v2.0
build:
context: MyNginx
dockerfile: Dockerfile
ports:
- "80:80"
- "801:801"
container_name: mynginx
deploy:
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
networks:
- default
networks:
default: #定义一个docker中已存在的network
external:
name: mybridge
newbridge: #新的network
#name: newbridge #compose版本3.5开始才支持自定义名称
2.启动容器
https://docs.docker.com/compose/reference/up/
docker-compose up [options] [--scale SERVICE=NUM...] [SERVICE...]
docker-compose up指令包含了docker-compose build,当yml文件services中配置的image(helloworld:v2.0和mynginx:v2.0)不存在时会先build这两个镜像,再创建container,
如果image已存在,则直接创建container
PS C:\Users\Administrator> cd C:\Users\Administrator\source\repos\AspNetCore_Docker
PS C:\Users\Administrator\source\repos\AspNetCore_Docker> docker-compose up -d
WARNING: Some services (helloworld, mynginx) use the ''deploy'' key, which will be ignored. Compose does not support ''deploy'' configuration - use `docker stack deploy` to deploy to a swarm.
Creating network "aspnetcore_docker_newbridge" with the default driver
Creating netcore_helloworld ... done
Creating mynginx ... done
PS C:\Users\Administrator\source\repos\AspNetCore_Docker> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mynginx v2.0 9c18561d7ab3 27 minutes ago 109MB
helloworld v2.0 c42e9f575fc4 24 hours ago 265MB
nginx latest 62c261073ecf 9 days ago 109MB
mcr.microsoft.com/dotnet/core/sdk 2.2-stretch e4747ec2aaff 3 weeks ago 1.74GB
mcr.microsoft.com/dotnet/core/aspnet 2.2-stretch-slim f6d51449c477 3 weeks ago 260MB
docker4w/nsenter-dockerd latest 2f1c802f322f 8 months ago 187kB
PS C:\Users\Administrator\source\repos\AspNetCore_Docker> docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
66ff08eda2ae helloworld:v2.0 "dotnet HelloWorld.d…" 11 minutes ago Up 11 minutes 0.0.0.0:81->80/tcp netcore_helloworld
5357b641a7b1 mynginx:v2.0 "nginx -g ''daemon of…" 11 minutes ago Up 11 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:801->801/tcp mynginx
3.删除容器
PS C:\Users\Administrator\source\repos\AspNetCore_Docker> docker-compose down
WARNING: Some services (helloworld, mynginx) use the ''deploy'' key, which will be ignored. Compose does not support ''deploy'' configuration - use `docker stack deploy` to deploy to a swarm.
Stopping mynginx ... done
Stopping netcore_helloworld ... done
Removing mynginx ... done
Removing netcore_helloworld ... done
Network mybridge is external, skipping #外部的bridge不会被删除,直接跳过
Removing network aspnetcore_docker_newbridge
四.远程镜像仓库
docker官方的只能创建一个免费私有仓库,国内各大云服务器商都有提供免费的、无限量的镜像仓库。
1.登录到远程registry
docker login --username=[username] ccr.ccs.tencentyun.com
PS C:\Users\Administrator> docker login --username=你的用户名 ccr.ccs.tencentyun.com
Password:
Login Succeeded
2.上传镜像
docker tag [ImageId] ccr.ccs.tencentyun.com/[namespace]/[ImageName]:[镜像版本号]
PS C:\Users\Administrator> docker tag c42e9f575fc4 ccr.ccs.tencentyun.com/wuuu/helloworld
PS C:\Users\Administrator> docker tag 9c18561d7ab3 ccr.ccs.tencentyun.com/wuuu/mynginx
PS C:\Users\Administrator> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ccr.ccs.tencentyun.com/wuuu/mynginx latest 9c18561d7ab3 2 days ago 109MB
mynginx v2.0 9c18561d7ab3 2 days ago 109MB
ccr.ccs.tencentyun.com/wuuu/helloworld latest c42e9f575fc4 3 days ago 265MB
helloworld v2.0 c42e9f575fc4 3 days ago 265MB
nginx latest 62c261073ecf 12 days ago 109MB
mcr.microsoft.com/dotnet/core/sdk 2.2-stretch e4747ec2aaff 3 weeks ago 1.74GB
mcr.microsoft.com/dotnet/core/aspnet 2.2-stretch-slim f6d51449c477 3 weeks ago 260MB
docker4w/nsenter-dockerd latest 2f1c802f322f 8 months ago 187kB
PS C:\Users\Administrator>
docker push ccr.ccs.tencentyun.com/[namespace]/[ImageName]:[镜像版本号]
PS C:\Users\Administrator> docker push ccr.ccs.tencentyun.com/wuuu/helloworld
The push refers to repository [ccr.ccs.tencentyun.com/wuuu/helloworld]
...
latest: digest: sha256:d991fe759257905f727593cc09d8299462e20e31ada3a92023a48fbc130f7484 size: 1581
PS C:\Users\Administrator> docker push ccr.ccs.tencentyun.com/wuuu/mynginx
The push refers to repository [ccr.ccs.tencentyun.com/wuuu/mynginx]
...
latest: digest: sha256:0eda000278411f5b6e034944993f6f5b94825125124f67cc7caf4e684aad5a85 size: 1155
PS C:\Users\Administrator>
2.通过远程镜像启动容器
在原yml文件基础上移除build项,修改image地址。
docker compose up会从远程仓库pull镜像并启动容器,如果是私有仓库,需要提前登录到远程registry。
version: ''3.4''
services:
helloworld:
image: ccr.ccs.tencentyun.com/wuuu/helloworld
environment: #环境变量
- ASPNETCORE_ENVIRONMENT=Development
ports: #端口映射
- "81:80"
container_name: netcore_helloworld #容器名
deploy:
restart_policy: #重启策略
condition: on-failure
delay: 5s
max_attempts: 3
networks: #指定network
- default
- newbridge
mynginx:
image: ccr.ccs.tencentyun.com/wuuu/mynginx
ports:
- "80:80"
- "801:801"
container_name: mynginx
deploy:
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
networks:
- default
networks:
default: #定义一个docker中已存在的network
external:
name: mybridge
newbridge: #新的network
#name: newbridge #compose版本3.5开始才支持自定义名称
示例代码Github地址:https://github.com/wwwu/AspNetCore_Docker
- AspNetCore容器化(Docker)部署(一) —— 入门
- AspNetCore容器化(Docker)部署(二) —— 多容器通信
- AspNetCore容器化(Docker)部署(三) —— Docker Compose容器编排
- AspNetCore容器化(Docker)部署(四) —— Jenkins自动化部署
Docker - 03 编排容器 Docker Compose 指令速查表
目录
- 01 Docker 常用指令、参数配置速查表
- 02 Dockerfile 指令速查表
- 03 Docker Compose 指令速查表
Docker - 03 编排容器 Docker Compose 指令速查表
1 docker-compose CLI 命令
1.1 主要
命令 | 说明 | 使用 |
---|---|---|
up | 创建并运行作为服务的容器 | ![]() |
down | 停止服务容器并清除 | ![]() |
1.2 其它
命令 | 说明 | 使用 |
---|---|---|
bind | build需要的镜像 | build [options] [--build-arg key=val...] [SERVICE...] |
config | 验证脚本 | config [options] |
create | 创建镜像不启动 | create [options] [SERVICE...] |
events | 监听容器事件 | events [options] [SERVICE...] |
exec | 执行指定容器执行程序 | exec [options] [-e KEY=VAL...] SERVICE COMMAND [ARGS...] |
run | 运行容器一次性的程序 | run [options] [-v VOLUME...] [-p PORT...] [-e KEY=VAL...] [-l KEY=VALUE...] SERVICE [COMMAND] [ARGS...] |
kill | 强行停止服务 | kill [options] [SERVICE...] |
pause | 暂停服务 | pause [SERVICE...] |
unpause | 恢复被暂停的服务 | unpause [SERVICE...] |
stop | 停止运行一个服务的所有容器 | stop [options] [SERVICE...] |
start | 启动运行某个服务的所有容器 | start [SERVICE...] |
restart | 重启某个服务的所有容器 | restart [options] [SERVICE...] |
rm | 删除停止的服务(容器) | rm [options] [SERVICE...] |
logs | 展示service的日志 | logs [options] [SERVICE...] |
top | 容器资源占用 | top [SERVICE...] |
ps | 容器列表 | ps [options] [SERVICE...] |
port | 查看服务中的端口被映射到了宿主机的哪个端口上 | port [options] SERVICE PRIVATE_PORT |
pull | 拉取服务依赖的镜像 | pull [options] [SERVICE...] |
push | 提交镜像 | push [options] [SERVICE...] |
bundle | 打包 DAB 文件 | bundle [options] |
scale | 指定某一个服务启动的容器的个数 | scale [SERVICE=NUM...] |
2 docker-compose 指令速查表
按字母排列
命令 | 说明 | 用法 |
---|---|---|
build | 编译Dockerfile生成镜像 | ![]() |
command | 覆盖容器启动后默认执行的命令 | ![]() |
container_name | 容器的名字 | ![]() |
cap_add,cap_drop | 加入或者去掉容器能力 | ![]() |
depends_on | 容器的依赖 | ![]() |
configs | 导入配置 | ![]() |
dns | 设置DNS | ![]() |
dns_search | 自定义DNS搜索范围 | ![]() |
devices | 设备映射列表 | ![]() |
driver_opts | 给驱动传值 | ![]() |
entrypoint | 指定接入点 | ![]() |
env_file | 导入环境变量文件 | ![]() |
environment | 设置环境变量 | ![]() |
expose | 暴露的端口 | ![]() |
external_links | 连接单独启动的容器 | ![]() |
extra_hosts | 修改 /etc/hosts | ![]() |
healthcheck | 检查状态 | ![]() |
image | 镜像 | ![]() |
labels | 向容器添加元数据 | ![]() |
links | 连接容器 | ![]() |
logging | 配置日志服务 |
![]() ![]() |
network_mode | 网络模式 | ![]() |
networks | 加入指定网络 | ![]() |
pid | 跟主机系统共享进程命名空间 | ![]() |
ports | 映射端口 |
![]() ![]() |
restart | 出错重启方式 | ![]() |
stop_signal | 设置另一个信号来停止容器 | ![]() |
tmpfs | 挂载临时目录到容器内部 | ![]() |
volumes | 挂载一个目录 | ![]() |
3 例子 - 运行容器服务 WordPress
- 编写
docker-compose.yml
version: ''3.3''
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
volumes:
db_data:
- 运行
docker-compose up
参考
- docker-compose CLI
- Docker Compose
- Get started with WordPress
- Compose file version 3 reference
© 会煮咖啡的猫咪
Docker Compose 版本过高(Docker 版本不匹配),降低 docker-compose 版本
通过 docker-compose 启动容器,报错:
ERROR: The Docker Engine version is less than the minimum required by Compose. Your current project requires a Docker Engine of version 1.10.0 or greater.
升级 Docker 过于麻烦,只能降 docker-compose 的版本。
先看一下我们已经安装的 Docker 版本:
[root@Redmine-186 docker-compose]# docker -v
Docker version 1.7.1, build 786b29d/1.7.1
经查 Docker Compose Github Docs,发现 docker-compose 1.5.2 版本是兼容 Docker 1.7.1 的:Note that Compose 1.5.2 requires Docker 1.7.1 or later.
。
好了,开始降级 docker-compose,先卸载:
# pip uninstall docker-compose
再安装指定版本:
# pip install docker-compose==1.5.2
至此,docker-compose 降版本成功!
docker-compose.yml 版本问题
解决完 docker-compse 版本问题适配之后,对着已有的 docker-compose.yml 执行 “,会提示不能正常识别 docker-compose.yml 文件中的内容。究其原因,是因为我们的 docker-compose 1.5.2 只支持 V1 版本的 docker-compose.yml ,那么好,把现在 V2 版本的 docker-compose.yml 改成 V1 版本的格式。
V1 版本的 docker-compose.yml 只被支持到 docker-compose 1.6.x。再往后的 docker-compose 版本就不再支持 V1 版本的 docker-compose.yml。
先看文档:Compose file versions and upgrading。
V1 版本的 docker-compose.yml 文件格式主要区别就是:
- 没有开头的 version 声明
- 没有 services 声明
- 不支持 depends_on
- 不支持命名的 volumes, networks, build arguments 声明
- 其他我没用到的所以没细究的区别
附录
- How To Install Docker on CentOS 6
- Docker and docker-compose in CentOS 6
- 关于 pip 安装时提示 pkg_resources.DistributionNotFound 错误问题
- CentOS 升级 Python2.7
- ERROR: The Docker Engine version is less than the minimum required by Compose
- Docker Compose Github Docs
- Compose file versions and upgrading
DOCKER 学习笔记4 认识DockerCompose 多容器编排
前言
通过上一节的学习,学会了如何在Linux 环境下搭建Docker并且部署Springboot 项目,并且成功的跑了起来,当然,在生产环境中,不只是需要一个后端的Web 项目,还需要比如 Nginx 作为反向代理。数据库也需要单独部署在一个容器里面,要是我们像之前学过的那样一个个部署,那岂不是很麻烦。
所以,我们需要一套东西来帮助我们实现这个功能,那就是今天要学习的Docker Compose 容器编排技术。
Docker Compose
Docker Compose 用于定义和运行多容器Docker应用程序的工具,通过YAML文件来定义应用程序里面的服务。而后,通过一个命令,即可启动这些容器所产生的服务。
基本步骤:
- 定义
Dockerfile
自定义镜像 - 编辑
docker-compose.yml
进行容器服务的编排 docker-compose up
创建和启动容器服务
安装 Compose
Github 安装
从github 拉取最新版本的Compose 本地编译安装。推荐方式,错误少,可直接安装。
github https://github.com/docker/compose/releases
当前Github 最新版本为 1.25.4
## 下载最新版的Docker Compose 二进制包
curl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
## 赋予可执行权限
chmod +x /usr/local/bin/docker-compose
## 检查版本信息
docker-compose -v
pip 安装
这是种比较保守的安装方法,相较于上面的安装方法,建议还是采用上面的安装方法。
## 安装epel 额外的源
yum -y install epel-release
## 安装python-pip
yum -y install python-pip
## 更新pip 到最新版本
pip install -U pip
## install
pip install docker-componse
## 检查安装情况
docker-compose -v
测试使用
确保我们已经正常的安装了Docker Compose,我们将采用官网的DEMO 进行演示,在此,你不需要安装Python 以及Redis
1. 创建目录
mkdir -p composetest
cd composetest
2. 创建一个pyton web
## 创建app.py
vi app.py
## 复制以下内容到文件内保存退出
import time
import redis
from flask import Flask
app = Flask(__name__)
cache = redis.Redis(host=''redis'', port=6379)
def get_hit_count():
retries = 5
while True:
try:
return cache.incr(''hits'')
except redis.exceptions.ConnectionError as exc:
if retries == 0:
raise exc
retries -= 1
time.sleep(0.5)
@app.route(''/'')
def hello():
count = get_hit_count()
return ''Hello World! I have been seen {} times.\n''.format(count)
## 创建一个文件用于保存命令
vi requirements.txt
## 保存以下内容
flask
redis
自定义镜像
## 创建新的Dockerfile
vi Dockerfile
## 加入以下内容
FROM python:3.7-alpine
WORKDIR /code
ENV FLASK_APP app.py
ENV FLASK_RUN_HOST 0.0.0.0
RUN apk add --no-cache gcc musl-dev linux-headers
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt
COPY . .
CMD ["flask", "run"]
这告诉Docker:
从Python 3.7映像开始构建映像。 将工作目录设置为。/code 设置命令使用的环境变量。flask 安装gcc,以便诸如MarkupSafe和SQLAlchemy之类的Python包可以编译加速。 复制并安装Python依赖项。requirements.txt 将项目中的当前目录复制到映像中的工作目录。.. 将容器的默认命令设置为。flask run
撰写容器编排
## 创建docker-compose.yml 文件
vi docker-compose.yml
## 加入以下内容
version: ''3''
services:
web:
build: .
ports:
- "5000:5000"
redis:
image: "redis:alpine"
网络服务
该web服务使用从Dockerfile当前目录中构建的映像。然后,它将容器和主机绑定到暴露的端口5000。此示例服务使用Flask Web服务器的默认端口5000。
Redis服务
该redis服务使用 从Docker Hub注册表中提取的公共Redis映像。
运行服务
docker-compose up
Starting composetest_redis_1 ... done
Recreating composetest_web_1 ... done
Attaching to composetest_redis_1, composetest_web_1
redis_1 | 1:C 09 Feb 2020 02:14:31.462 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
redis_1 | 1:C 09 Feb 2020 02:14:31.462 # Redis version=5.0.7, bits=64, commit=00000000, modified=0, pid=1, just started
redis_1 | 1:C 09 Feb 2020 02:14:31.462 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
redis_1 | 1:M 09 Feb 2020 02:14:31.463 * Running mode=standalone, port=6379.
redis_1 | 1:M 09 Feb 2020 02:14:31.463 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
redis_1 | 1:M 09 Feb 2020 02:14:31.463 # Server initialized
redis_1 | 1:M 09 Feb 2020 02:14:31.463 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add ''vm.overcommit_memory = 1'' to /etc/sysctl.conf and then reboot or run the command ''sysctl vm.overcommit_memory=1'' for this to take effect.
redis_1 | 1:M 09 Feb 2020 02:14:31.463 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command ''echo never > /sys/kernel/mm/transparent_hugepage/enabled'' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
redis_1 | 1:M 09 Feb 2020 02:14:31.463 * DB loaded from disk: 0.000 seconds
redis_1 | 1:M 09 Feb 2020 02:14:31.463 * Ready to accept connections
web_1 | * Serving Flask app "app.py"
web_1 | * Environment: production
web_1 | WARNING: This is a development server. Do not use it in a production deployment.
web_1 | Use a production WSGI server instead.
web_1 | * Debug mode: off
web_1 | * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
服务成功的运行在5000端口下,访问尝试,而后刷新,观察计数器的变化!
常用命令
docker-compose up -d
后台运行服务
[root@mrclinux composetest]# docker-compose up -d
Starting composetest_web_1 ... done
Starting composetest_redis_1 ... done
docker-compose ps
查看当前的运行容器
[root@mrclinux composetest]# docker-compose ps
Name Command State Ports
-------------------------------------------------------------------------------------
composetest_redis_1 docker-entrypoint.sh redis ... Up 6379/tcp
composetest_web_1 flask run Up 0.0.0.0:8080->5000/tcp
docker-compose images
查看已存在的镜像信息
[root@mrclinux composetest]# docker-compose images
Container Repository Tag Image Id Size
------------------------------------------------------------------------
composetest_redis_1 docker.io/redis alpine b68707e68547 29.78 MB
composetest_web_1 composetest_web latest 0a812986cca6 221.8 MB
docker-compose stop
用来停止容器,不删除它,可以再次使用start启用
[root@mrclinux composetest]# docker-compose stop
Stopping composetest_web_1 ... done
Stopping composetest_redis_1 ... done
docker-compose start
使用start 启动存在的容器服务
[root@mrclinux composetest]# docker-compose start
Starting web ... done
Starting redis ... done
docker-compose down
停止服务并且移除容器
[root@mrclinux composetest]# docker-compose down
Stopping composetest_web_1 ... done
Stopping composetest_redis_1 ... done
Removing composetest_web_1 ... done
Removing composetest_redis_1 ... done
Removing network composetest_default
docker-compose up
创建以及启动服务
参考
https://docs.docker.com/compose/
https://www.cnblogs.com/ityouknow/p/8648467.html
原文出处:https://www.cnblogs.com/ChromeT/p/12286484.html
今天的关于docker-compose 仅适用于某些容器和docker compose适用于什么场景的分享已经结束,谢谢您的关注,如果想了解更多关于AspNetCore容器化(Docker)部署(三) —— Docker Compose容器编排、Docker - 03 编排容器 Docker Compose 指令速查表、Docker Compose 版本过高(Docker 版本不匹配),降低 docker-compose 版本、DOCKER 学习笔记4 认识DockerCompose 多容器编排的相关知识,请在本站进行查询。
本文标签: