Centos7使用docker部署Nginx并且多域名访问多端口服务(简易)
docker安装 (省略)拉取Nginx镜像文件并且简单部署拉取# 我默认拉的是最新的docker pull nginx部署这里只是简单部署,为了获取Nginx的配置文件docker run --name nginx-test -p 8081:80 -d nginx获取容器实例ID创建卷轴目录# 这里创建外部卷轴目录:根据自己定义的目录来# conf 主要配置Nginx的代理相关配置,后期集群或者
·
docker安装 (省略)
拉取Nginx镜像文件并且简单部署
拉取
# 我默认拉的是最新的
docker pull nginx
部署
这里只是简单部署,为了获取Nginx的配置文件
docker run --name nginx-test -p 8081:80 -d nginx
获取容器实例ID
创建卷轴目录
# 这里创建外部卷轴目录:根据自己定义的目录来
# conf 主要配置Nginx的代理相关配置,后期集群或者HTTPS证书均在里面配置
# logs 主要记录Nginx在运行中的日志
# html 主要对Nginx代理出现问题类似404等集中返回页面代理
# conf.d 主要配置多域名/IP 代理多端口服务配置,以及错误页面等
mkdir -p /dockers/nginx/{conf.d,logs,html,conf}
执行
docker cp 容器ID:/etc/nginx/nginx.conf /dockers/nginx/conf/nginx.conf
docker cp 容器ID:/etc/nginx/conf.d/default.conf /dockers/nginx/conf.d/default.conf
这时候就会发现我们之前创建的目录会出现Nginx原生配置文件,对于我这种小白只能照葫芦画瓢简单修改了。
我们主要修改还是conf.d/default.conf文件
server {
listen 80;
server_name www.IP1.com;
location / {
proxy_pass http://127.0.0.1:8080;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /dockers/nginx/html;
}
}
server {
listen 80;
server_name www.IP2.com;
location / {
proxy_pass http://127.0.0.1:8081;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /dockers/nginx/html;
}
}
保存(wq!)
重新启动镜像并且挂载
# 会玩docker的同学或者大佬,这里的解释估计在座的各位比我牛逼的多,我就不献丑解释了
# 关注点就是挂在的目录一定要和自己的对齐,不然找不到服务的
# 还有这个 --net host 一定要加上 容器就和宿主机共用网络 不加就找不到服务
docker run \
--name nginx \
-d -p 80:80 --net host \
-v /dockers/nginx/html:/usr/share/nginx/html \
-v /dockers/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro \
-v /dockers/nginx/conf.d:/etc/nginx/conf.d \
nginx;
别忘记开80端口
效果展示
更多推荐
已为社区贡献1条内容
所有评论(0)