Appearance
Docker-compose安装
Docker Compose 的基础使用
介绍:Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排。
Compose 允许用户通过一个单独的 docker-compose.yml 模板文件(YAML 格式)来定义一组相关联的应用容器为一个项目(project)
Compose 中有两个重要的概念:
- 服务 (
service):一个应用的容器,实际上可以包括若干运行相同镜像的容器实例。 - 项目 (
project):由一组关联的应用容器组成的一个完整业务单元,在docker-compose.yml文件中定义。
1、安装与卸载
Linux
docker compose 是一个工具,能够实现快速编排。
windows/macOS

卸载操作:
如果是 windows 或者 macOS ,需要卸载一下 Docker Desktop。
如果 Docker Compose 是作为一个单独的二进制文件安装的:
找到 Docker Compose 的安装位置。如果你不确定其安装位置,可以通过运行
which docker-compose(在 Linux 或 Mac 上)或where docker-compose(在 Windows 上)来找到它。删除 Docker Compose 二进制文件。一旦你知道了 Docker Compose 的安装位置,你可以手动删除该文件。在 Linux 或 Mac 上,通常可以使用
sudo rm命令来删除:
sudo rm `which docker-compose`2、如何使用
Compose 使用的三个步骤:
- 使用 Dockerfile 定义应用程序的环境。
- 使用 docker-compose.yml 定义构成应用程序的服务,这样它们可以在隔离环境中一起运行。
- 最后,执行 docker-compose up 命令来启动并运行整个应用程序。
示例使用:
准备一个 SpringBoot 的项目,并打包为 Jar 包
放置到 Linux 的一个文件夹下
创建文件:Dockerfile
# 使用官方 Java 运行时环境作为基础镜像
FROM openjdk:8
# 工作目录设为 /app
WORKDIR /app
# 将本地的 JAR 文件复制到镜像中的 /app 目录
COPY ./zfile-4.1.5.jar /app/myapp_zfile.jar
# 暴露应用运行端口
EXPOSE 8091
# 指定容器启动时执行的命令
CMD ["java", "-jar", "myapp_zfile.jar"]创建文件 docker-compose.yml
version: '3.8'
services:
app:
build: .
container_name: myapp_zfile
ports:
- "8091:8091"使用 Docker Compose 启动应用
docker-compose up --build有一个报错:
failed to solve: openjdk:8-jre-slim: failed to do request: Head "https://7iwp6tq0.mirror.aliyuncs.com/v2/library/openjdk/manifests/8-jre-slim?ns=docker.io": dial tcp: lookup 7iwp6tq0.mirror.aliyuncs.com on 192.168.0.1:53: read udp 192.168.0.21:53861->192.168.0.1:53: read: connection refused最后定位到是 DNS 配置的原因
先尝试改了 Docker 镜像源的配置 配置文件 /etc/docker/daemon.json
改为了
{
"registry-mirrors": ["https://hub-mirror.c.163.com"]
}还是报错,尝试访问 ping hub-mirror.c.163.com; 网络是正常的
尝试修改 DNS 配置文件 /etc/resolv.conf;改为了阿里云公共 DNS,
参考链接: https://zhuanlan.zhihu.com/p/339495904
# Generated by NetworkManager
nameserver 223.6.6.6启动正常
#后台执行
docker-compose up -d
#停止服务
docker-compose down
其他的使用参考一下这个: https://juejin.cn/post/7042663735156015140
快速使用
安装 docker compose
指定文件后,选择后台运行
docker-compose -f docker-compose-environment-aliyun.yml up -d参考