一篇文章docker-compose安装使用全解


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 关于docker compose
  • docker compose安装
    • Linux安装docker-compose
    • Windows安装docker-compose
  • docker-compose YMAL
    • 常用配置项
    • 综合配置示例
  • docker compose常用命令
    • 启动服务
    • 关闭服务
    • 列出容器
    • 查看日志
    • 重启日志
    • 构建镜像
  • 总结


关于docker compose

Docker Compose是一个用于定义和运行多个Docker容器的工具,他是一款强大的容器编排工具,能够简化容器化应用程序的部署和管理,提高开发效率和部署速度,其功能与特点如下:
一篇文章docker-compose安装使用全解_第1张图片

  • 容器编排:Docker Compose可以实现容器编排,即在一个项目(如Web应用)中同时运行多个容器,并将它们组合起来以形成服务集群。

  • 灵活性:Docker Compose可以灵活地定义多个容器之间的关系,包括网络、数据卷等,并支持在不同的环境中进行部署,例如开发、测试和生产环境。

  • Yaml格式:Docker Compose使用Yaml格式来定义容器、服务、网络和存储等信息,易于理解和管理。

  • 可扩展性:Docker Compose可以快速扩展、添加和删除容器,使得它非常适合于部署和管理大规模的容器化应用程序。

  • Docker Engine集成:Docker ComposeDocker Engine紧密集成,在Docker官方文档中有详细的介绍,同时也支持第三方插件和工具。

docker compose安装

Linux安装docker-compose

  1. 下载与安装
    在终端中输入以下命令,下载最新版本的 docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  1. 赋予执行权限:
sudo chmod +x /usr/local/bin/docker-compose
  1. 检查是否安装成功
docker-compose --version

显示版本信息表示安装成功。

Windows安装docker-compose

  1. 下载最新版本的 docker-compose
https://github.com/docker/compose/releases/download/1.29.2/docker-compose-Windows-x86_64.exe
  1. 把下载的文件重命名为 docker-compose.exe,并将其移到在环境变量 PATH 中的一个目录下,如 C:\Windows\System32\。

  2. 打开命令提示符或 PowerShell 并输入以下命令,检查是否安装成功:

docker-compose --version

显示版本信息表示安装成功。

docker-compose YMAL

docker compose的使用依赖于docker-compose.ymal文件,改文件放置于我们项目文件的根目录下面,用于编排该项目容器的一下名称,挂载,网络等docker环境信息。下面介绍一下常用的配置:

常用配置项

  • version:指定Compose文件格式的版本号,当前最新版本为3。

  • services:定义应用程序中的各个服务,每个服务都有一个独立的Docker容器。

  • image:指定要使用的Docker镜像。

  • ports:将容器端口映射到主机端口,格式为"HOST:CONTAINER"。

  • volumes:将主机上的目录或文件夹挂载到容器中,格式为"HOST:CONTAINER"。

  • networks:定义应用程序中的网络,在同一个网络中的服务可以相互通信。

  • environment:设置环境变量,格式为"KEY=VALUE"。

综合配置示例

version:'3'
services:
  web:
    image: nginx:latest
    container_name: nginx
    restart: always
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
      - ./html:/usr/share/nginx/html
      - ./logs:/var/log/nginx
    environment: - NGINX_HOST=localhost - NGINX_PORT=80
    networks: - webnet
  db: 
    image: mysql 
    volumes: - ./db:/var/lib/mysql 
    networks: - dbnet 
    environment: - MYSQL_ROOT_PASSWORD=password 
    networks: - webnet

上面定义了两个服务,一个是Web服务,使用Nginx镜像,将主机的80端口映射到容器的80端口,并将主机上的web目录挂载到容器的/usr/share/nginx/html目录中。
一篇文章docker-compose安装使用全解_第2张图片

另一个是数据库服务,使用MySQL镜像,将主机上的db目录挂载到容器的/var/lib/mysql目录中。两个服务分别在不同的网络中运行。同时,为Web服务指定了两个环境变量:NGINX_HOST和NGINX_PORT。

docker compose常用命令

Docker Compose是用于定义和运行多容器Docker应用程序的工具。以下是常用的一些命令:

启动服务

docker-compose up:启动compose配置中定义的服务容器。

举例说明:假设在docker-compose.yml文件中定义了一个web服务,可以使用以下命令启动:

$ docker-compose up -d web

关闭服务

docker-compose down:停止并删除compose配置中定义的所有服务容器。

举例说明:使用以下命令停止并删除所有服务容器:

$ docker-compose down

列出容器

docker-compose ps:列出当前compose配置的所有服务容器。

举例说明:使用以下命令列出当前配置的所有服务容器:

$ docker-compose ps

查看日志

docker-compose logs:输出指定服务容器的日志信息。

举例说明:使用以下命令输出web服务容器的日志信息:

$ docker-compose logs web

重启日志

docker-compose restart:重启指定的服务容器。

举例说明:使用以下命令重启web服务容器:

$ docker-compose restart web

构建镜像

docker-compose build:构建指定服务容器的镜像。

举例说明:使用以下命令构建web服务容器的镜像:

$ docker-compose build web

总结

以上就是今天要讲的内容,一篇文章docker-compose安装使用全解,感谢大家支持。喜欢记得三联哟。

你可能感兴趣的:(服务器运维/架构,Docker,K8s容器技术,PHP全栈日记,docker,容器,运维)