目录
1.2 创建nginx容器并且对nginx所需文件进行目录挂载
1.nginx部署单个
1.1 拉取nginx镜像
docker pull nginx
1.2 创建nginx容器并且对nginx所需文件进行目录挂载
docker run -itd \
--name mynginx \
-v /myconf/nginx/conf.d:/etc/nginx/conf.d \
-v /myconf/nginx/html:/etc/nginx/html \
-v /myconf/nginx/log:/usr/log/nginx \
-p 8081:80 nginx
注:
:前是宿主机路径,:后是容器路径
第一个-v :挂载nginx的主配置文件,以方便在宿主机上直接修改容器配置文件
第二个-v:挂载静态页面目录
第三个-v:挂载容器nginx日志
1.3 nginx配置文件
server {
listen 80;
server_name www.zking.com;
location / {
root /etc/nginx/html/;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ^~/api/ {
# nginx监听当以api开头请求时转发地址,后端容器ip
proxy_pass http://178.17.1.4:8081/;
}
}
将此文件放置宿主机 myconf/nginx/conf.d 下
1.4 后端容器
docker run -itd --name myspring spring:2.0
2.搭建nginx集群
修改nginx配置文件
#服务器的集群
upstream tomcatList { #服务器集群名字
server 178.17.1.5:8081 weight=1; #服务器1 weight是权重的意思,权重越大,分配的概率越大
server 178.17.1.3:8081 weight=2; #服务器2 weight是权重的意思,权重越大,分配的概率越大
server 178.17.1.4:8081 weight=2; #服务器2 weight是权重的意思,权重越大,分配的概率越大
}
server {
listen 80;
server_name www.zking.com;
location / {
root /etc/nginx/html/;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ^~/api/ {
rewrite ^/api/(.*)$ /$1 break;
proxy_pass http://tomcatList;
proxy_redirect default;
}
}
3.不同端口解决方案
docker network connect mynet mynginx
该nginx容器连入多个网段