使用Docker-Compose快速部署Nginx服务

前言

Nginx是一款高性能的Web服务器和反向代理工具,结合Docker Compose可以实现快速部署和配置管理。通过本教程可以学习到docker-compose.yml文件一键部署Nginx服务。


准备工作

  1. 确保已安装 Docker 和 Docker Compose:

    bashCopy Code
    # 检查版本(Docker 20.10+,Docker Compose 2.0+)
    docker --version
    docker-compose --version
    
  2. 创建项目目录:

    mkdir nginx-docker && cd nginx-docker
    

配置 Docker Compose 文件

  1. 创建 docker-compose.yml

    touch docker-compose.yml
    
  2. 编辑文件内容:

    version: '3.8'  # 使用兼容的 Compose 版本
    
    services:
      nginx:
        image: nginx:latest  # 使用官方最新镜像
        container_name: my-nginx  # 自定义容器名称
        restart: always  # 自动重启
        ports:
          - "80:80"     # 映射宿主机80端口到容器80端口
          - "443:443"   # 如需HTTPS可启用
        volumes:
          - ./html:/usr/share/nginx/html  # 挂载静态网站目录
          - ./nginx.conf:/etc/nginx/nginx.conf  # 挂载自定义配置文件
          - ./conf.d/:/etc/nginx/conf.d/  # 子配置目录挂载
          - ./logs:/var/log/nginx  # 挂载日志目录
        networks:
          - nginx-net  # 自定义网络(可选)
    
    networks:
      nginx-net:
        driver: bridge
    

启动 Nginx 服务

  1. 创建所需目录:

    mkdir html logs conf.d
    
  2. 启动容器(后台模式):

    docker-compose up -d
    
  3. 验证服务状态:

    docker-compose ps -a
    # 或浏览器访问 http://localhost
    

自定义配置

1. 修改默认页面

在 html 目录中创建 index.html

echo "<h1>Hello Docker Nginx!</h1>" > html/index.html
2. 自定义 Nginx 配置
  1. 生成默认配置文件:

    docker run --rm nginx cat /etc/nginx/nginx.conf > nginx.conf
    
  2. 修改 nginx.conf 后重启服务:

    bashCopy Code
    docker-compose restart nginx
    

常用命令

命令说明
docker-compose logs -f查看实时日志
docker-compose restart nginx重启服务
docker-compose down停止并删除容器
docker-compose exec nginx bash进入容器终端

注意事项

  1. 端口冲突‌:确保宿主机 80/443 端口未被占用
  2. 配置文件权限‌:挂载的配置文件需具有正确权限
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值