docker-compose安装及使用

本文详细介绍了如何在已安装Docker的系统中安装docker-compose,配置环境变量,并通过实例演示如何使用docker-compose启动和配置Nginx服务,包括自定义nginx.conf和静态网站部署。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker-compose安装及使用

官网仓库地址:
https://github.com/docker/compose

1. 安装

如果按照之前文档中安装了docker,会默认安装docker-compose,将如下文件拷贝到系统path路径中:

$ sudo cp /usr/libexec/docker/cli-plugins/docker-compose /usr/local/bin/

# 配置环境变量
$ echo "export PATH=/usr/local/bin/:\$PATH" | sudo tee -a /etc/profile
$ source /etc/profile

$ docker-compose -v
Docker Compose version v2.26.1

也可以从官方仓库中下载二进制文件拷贝到/usr/local/bin路径,并添加可执行权限:

https://github.com/docker/compose/releases

2. 使用示例

使用 docker-compose 启动一个 Nginx 应用程序,你需要创建一个 docker-compose.yml 文件来定义 Nginx 服务,并为其配置端口映射和其他必要的设置。

以下是一个示例,展示了如何使用 docker-compose 启动一个简单的 Nginx 应用程序,并在主机上暴露端口:

1. 创建 docker-compose.yml文件

首先,创建一个 docker-compose.yml 文件。在这个文件中,你可以定义 Nginx 服务以及如何启动它。以下是一个简单的配置示例:

version: '3.8'

services:
  nginx:
    image: nginx:latest
    ports:
      - "80:80"

解释 docker-compose.yml

  • version: 这是 Docker Compose 文件的版本。在这个示例中,使用了 3.8
  • services: 这里定义了所有服务。我们创建了一个名为 nginx 的服务。
  • image: 使用 nginx:latest Docker 镜像。这将拉取最新的 Nginx 镜像。
  • ports: 定义端口映射。在这里,我们将主机的 80 端口映射到容器内的 80 端口,这样主机上的流量可以转发到容器。

2. 使用 docker-compose 启动 Nginx

在包含 docker-compose.yml 的目录中,运行以下命令以启动 Nginx:

# docker-compose up
WARN[0000] /root/nginx-demo/docker-compose.yml: `version` is obsolete
[+] Running 8/8
 ✔ nginx Pulled                             
   ✔ b0a0cf830b12 Pull complete           
   ✔ 8ddb1e6cdf34 Pull complete     
   ✔ 5252b206aac2 Pull complete       
   ✔ 988b92d96970 Pull complete   
   ✔ 7102627a7a6e Pull complete
   ✔ 93295add984d Pull complete     
   ✔ ebde0aa1d1aa Pull complete    
[+] Running 1/2
 ✔ Network nginx-demo_default    Created                 
 ⠴ Container nginx-demo-nginx-1  Created     
Attaching to nginx-1
nginx-1  | /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
nginx-1  | /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
nginx-1  | /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
nginx-1  | 10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
nginx-1  | 10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lldhsds

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值