1、系统环境
服务器底层系统:centos8.3
2、安装docker
# 更新yum | |
yum update | |
# 安装docker | |
yum install docker-ce | |
# 查看是否安装成功,输出版本号信息视为安装成功 | |
docker -v |
# 配置阿里云景象仓库 | |
sudo mkdir -p /etc/docker | |
sudo tee /etc/docker/daemon.json <<-'EOF' | |
{ | |
"registry-mirrors": ["https://你自己的景象服务链接"] | |
} | |
EOF | |
# 重新加载配置 | |
sudo systemctl daemon-reload | |
# 重启docker | |
sudo systemctl restart docker | |
# 安装docker nginx 景象 | |
docker pull nginx:latest | |
# 查看景象是否下载成功 | |
docker images |
# 启动三个nginx容器 | |
docker run --name nginx01 -d -p 8081:80 nginx | |
docker run --name nginx02 -d -p 8082:80 nginx | |
docker run --name nginx03 -d -p 8083:80 nginx | |
#查看启动的容器 | |
docker ps |
#通过ip加端口号访问nginx容器,检查是否正常
浏览器访问ip+端口
24.234.12.15:8083
#向容器内写入 文件 | |
#1、先创建一个index.html,内容随便填 | |
touch index.html | |
echo "here 8081" >> index.html | |
#2、将文件copy进容器的nginx服务下 | |
docker cp index.html nginx01:/usr/share/nginx/html | |
#3、重复上述步骤 分别将三个容器里面都写入不同内容的文件,便于后面验证访问 | |
#配置宿主机的nginx 负载均衡 nginx.conf 配置文件添加如下配置,端口号可自定义 | |
upstream test01 { | |
server 宿主机IP:8081 weight=1; | |
server 宿主机IP:8082 weight=2; | |
server 宿主机IP:8083 weight=6; | |
} | |
server { | |
listen 80; | |
server_name 宿主机IP; | |
root /usr/share/nginx/html; | |
index index.html; | |
location / { | |
proxy_pass http://test01; | |
proxy_set_header Host $http_host; | |
proxy_set_header X-Real-IP $remote_addr; | |
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | |
proxy_connect_timeout 30; | |
proxy_send_timeout 60; | |
proxy_read_timeout 60; | |
proxy_buffering on; | |
proxy_buffer_size 32k; | |
proxy_buffers 4 128k; | |
} | |
} | |
# 重载nginx 配置 | |
# 不断刷新访问80端口,会看到访问到的的页面内容不同,频次按照weight 权重分布 | |
# 到此完成nginx 一种负载均衡的练习 |