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 一种负载均衡的练习