Nginx-那些事儿02
今天来讲讲如何在linux下安装Nginx以及如何反向代理。
1.搜索Nginx 容器镜像
docker search nginx
2.下载镜像
docker pull nginx:1.20.0 镜像名称和版本以冒号分割
3.以镜像启动为容器,随机端口
docker run -d -P --name nginxcontain #镜像id -d 后台启动 -P 大写 随机生成端口-映射80端口 --name 容器别名
4.以镜像启动为容器,指定端口
docker run -d -p 8888:80 --name nginxcontain-01 #镜像id/镜像名称
5.访问
curl localhost:8888 或者 curl 192.168.0.7:8888
6:要是显示wellcom to nginx,则表明nginx 成功了
6.接下来讲下如何在centos7下 创建多个服务实例,通过 [docker desktop打包项目成镜像]
(https://www.cnblogs.com/RaymonGoGo/p/16323664.html),在项目根目录下创建一个sh文件:
具体的shell脚本如下:
docker build -f ".\Dockerfile" -t net6v1:latest "." docker save net6v1:latest | gzip > net6v1.tar.gz
把打包完的镜像,上传至linux服务,并导入镜像:
docker load -i net6v1.tar.gz
重复以上操作,就可以创建多个服务实例了。
常见的创建镜像命令
基于Dockerfile创建镜像 docker的操作命令集合 docker build -t net6v1 -f Dockerfile . 启动镜像 docker run -itd -p 8080:80 net6v1 注:-P 端口映射
7.进入nginx 内部
docker exec -it nginxcontain-1 bash
6.修改Nginx docker 容器配置文件
配置文件路径: /etc/nginx/ vim nginx.conf 不能用 下面解决
7.解决vim 不能用的问题
apt-get update apt-get install vim
8.修改配置文件
vim /etc/nginx/nginx.conf
9.重启Nginx
10.创建文件夹
mkdir 文件夹名称
挂载:
10.查看Nginx容器内的配置文件
cat /etc/nginx/conf.d/default.conf 查看子配置文件
cat /etc/nginx/nginx.conf 查看总配置文件
11.创建文件夹 /nginx/
12.复制容器中配置文件到linux创建的文件路径
在宿主机里面执行以下命令
docker cp 容器名:要拷贝的文件在容器里面的路径 要拷贝到宿主机的相应路径
docker cp nginxcontain-01:/etc/nginx/conf.d /nginx
docker cp nginxcontain-01:/etc/nginx/nginx.conf /nginx
具体命令如下所示:
这样就把nginx容器的配置文件复制到linux外面了。
下面得重新run下nginx实例:
docker run -d --name mynginx -p 8889:80 -v /nginx/conf.d:/etc/nginx/conf.d -v /nginx/nginx.conf:/etc/nginx/nginx.conf --privileged=true nginx
13.重启容器生效
docker restart #容器Id
14.配置负载均衡
# 服务器列表 ---放置在Server外面 upstream serverList{ server 192.168.0.7:8080; server 192.168.0.7:8081; server 192.168.0.7:8082; }
proxy_pass http://serverlist;
保存配置文件,重启docker后生效。这样linux下的nginx反向代理已经配置完毕。
本文来自博客园,作者:Raymon撸码记,转载请注明原文链接:https://www.cnblogs.com/RaymonGoGo/p/16484871.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?