Docker安装Nginx配置轮询
时间: 2025-07-09 14:50:47 浏览: 3
### 安装 Nginx 并配置负载均衡轮询
#### 启动 Nginx 容器
为了快速启动一个带有基本配置的 Nginx 实例,可以使用如下命令创建并运行一个新的容器[^2]:
```bash
docker run -itd --name nginx-lb -p 80:80 nginx
```
此操作将会拉取官方最新的 Nginx 镜像,并将其映射至主机端口 80。
#### 准备外部配置文件
对于更复杂的场景如实现负载均衡功能,则建议先准备必要的配置文件。这通常涉及到将宿主机上的特定目录挂载给容器内的 `/etc/nginx` 目录以便于管理和持久化保存配置更改[^4]:
1. 创建用于存储配置文件的工作空间:
```bash
mkdir -p /home/docker-nginx && cd $_
```
2. 将现有容器中的默认配置拷贝出来作为模板:
```bash
docker cp nginx-lb:/etc/nginx/nginx.conf ./nginx.conf
docker cp nginx-lb:/etc/nginx/conf.d/default.conf ./conf.d/
```
注意这里的 `./conf.d/` 是新建立的一个子文件夹用来放置站点级别的配置文件。
#### 编辑配置以启用轮询算法
编辑刚才获取到的 `default.conf` 或者新增加一个 `.conf` 文件,在其中定义 upstream 块来指定一组服务器以及采用何种调度策略:
```nginx
upstream backend {
least_conn;
server app1.example.com weight=5 max_fails=2 fail_timeout=30s;
server app2.example.com backup;
}
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://backend;
...
}
}
```
上述例子展示了如何通过 `least_conn` 来分配请求给连接数最少的服务节点;也可以替换为简单的 round-robin 方式即去掉该指令,默认情况下就是基于时间片轮流分发访问请求[^5]。
最后一步是重新加载或重启服务使新的设定生效:
```bash
docker restart nginx-lb
```
阅读全文
相关推荐


















