简介
定义和运行多个Docker容器的应用 同时可以对多个容器进行编排。可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。
使用的步骤:
1.使用 Dockerfile 定义应用程序的环境。
2.使用 docker-compose.yml 定义构成应用程序的服 务,这样它们可以在隔离环境中一起运行。
3.最后,执行 docker-compose up 命令来启动并运行整个应用程序。
安装
发行的版本地址:https://github.com/docker/compose/releases。
$ sudo curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
要安装其他版本的 Compose,替换 1.24.1。
将可执行权限应用于二进制文件:
$ sudo chmod +x /usr/local/bin/docker-compose
创建软链:
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
测试是否安装成功:
$ docker-compose --version
使用
创建一个docker-compose.
启动应用程序:
docker-compose up
问题:
WARNING: Ignoring https://dl-cdn.alpinelinux.org/alpine/v3.15/main: Permission denied,这个错误是无法访问官网给的外网,在Dockerfile中加入下列代码
RUN sed -i 's/https/http/' /etc/apk/repositories
RUN apk add curl
复制后出现这个错误,sed: unsupported command �
ERROR: Service 'web' failed to build: The command '/bin/sh -c sed -i ‘s/https/http/’ /etc/apk/repositories' returned a non-zero code: 1
这个是由于复制的内容到Dockerfile后出现问题 ‘s/https/http/’,改英文符号
ERROR: unable to select packages:
curl (no such package):
required by: world[curl]
ERROR: Service 'web' failed to build: The command '/bin/sh -c apk add curl' returned a non-zero code: 1
版权声明:本文为m0_45987292原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。