Docker 部署 Nginx 完整指南

Docker 部署 Nginx 完整指南

1. 准备工作

1.1 创建挂载目录

bash 复制代码
# 创建挂载目录
mkdir -p /root/software/nginx/conf
mkdir -p /root/software/nginx/log
mkdir -p /root/software/nginx/html

2. 初始运行 Nginx 容器

2.1 启动临时容器

bash 复制代码
# 生成临时容器用于获取默认配置
docker run --name nginx -p 9001:80 -d nginx

2.2 复制配置文件到宿主机

bash 复制代码
# 将容器nginx.conf文件复制到宿主机
docker cp nginx:/etc/nginx/nginx.conf /root/software/nginx/conf/nginx.conf

# 将容器conf.d文件夹下内容复制到宿主机
docker cp nginx:/etc/nginx/conf.d /root/software/nginx/conf/conf.d

# 将容器中的html文件夹复制到宿主机
docker cp nginx:/usr/share/nginx/html /root/software/nginx/

3. 清理临时容器

bash 复制代码
# 查找nginx对应的容器id
docker ps -a

# 关闭该容器
docker stop nginx

# 删除该容器
docker rm nginx

# 或者直接强制删除正在运行的nginx容器
docker rm -f nginx

4. 正式运行 Nginx 容器

bash 复制代码
docker run \
-p 80:80 \
--name nginx \
-v /root/software/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /root/software/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /root/software/nginx/log:/var/log/nginx \
-v /root/software/nginx/html:/usr/share/nginx/html \
-d nginx:latest

5. Nginx 配置文件结构

复制代码
main        # 全局配置
├── events  # 网络连接配置
├── http    # 主要功能配置
│   ├── upstream # 负载均衡
│   ├── server   # 虚拟主机
│   │   ├── location  # URI匹配
│   │    └── ...
└── ...

6. 常用管理命令

bash 复制代码
# 查看容器状态
docker ps

# 查看日志
docker logs nginx

# 进入容器
docker exec -it nginx bash

# 重启容器
docker restart nginx

7. 最佳实践

  1. 使用docker-compose管理
  2. 定期备份配置文件
  3. 指定镜像版本
  4. 添加健康检查

The end.

相关推荐
灯澜忆梦1 小时前
【docker】#2 | 基础命令
docker·容器·eureka
程序员老赵3 小时前
Docker 部署 WordPress:轻松搭建开源内容管理平台
docker·开源·wordpress
sbjdhjd4 小时前
云安全 | 从特权容器到旧版 runC:Docker 宿主机访问与运行时缺陷复盘
运维·网络安全·docker·云原生·kubernetes·云计算·云安全
Pocker_Spades_A6 小时前
Penpot自托管设计协作:Docker部署、MCP接入与Codex生成UI实操记录
ui·docker·容器
Lvan的前端笔记15 小时前
docker:每个前端项目一个 Nginx 容器还是只有一个Nginx容器
前端·nginx·docker
姜鱼问生15 小时前
Nginx 缓存命中率监控:从 X-Cache-Status 到实时统计
运维·nginx·缓存
sbjdhjd20 小时前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全
热爱Liunx的丘丘人20 小时前
1、什么是K8s
云原生·容器·kubernetes
帷幕落秋1 天前
Docker的两种安装
运维·docker·容器