Nginx Proxy Manger-反向代理神器-Docker一键部署

Nginx Proxy Manger-反向代理神器-利用Docker实现一键部署

Lunix发行版 推荐使用Debian 10 或者 Ubuntu 20.04或更高版本

Nginx Proxy Manger 是一个反向代理管理系统,它基于 NGINX,具有漂亮干净的 Web UI。还可以获得受信任的 SSL 证书,并通过单独的配置、自定义和入侵保护来管理多个代理。

<span class="token function">mkdir</span> -p /root/data/docker_data/npm <span class="token operator">&&</span> <span class="token builtin class-name">cd</span> /root/data/docker_data/npm
<span class="token function">mkdir</span> -p /root/data/docker_data/npm <span class="token operator">&&</span> <span class="token builtin class-name">cd</span> /root/data/docker_data/npm 
mkdir -p /root/data/docker_data/npm && cd /root/data/docker_data/npm
vim docker-compose.yml
vim docker-compose.yml 
vim docker-compose.yml

英文输入法下,按 i进入'Insert'编辑模式,然后复制粘贴下面内容:

<span class="token key atrule">version</span><span class="token punctuation">:</span> <span class="token string">'3'</span> <span class="token key atrule">services</span><span class="token punctuation">:</span> <span class="token key atrule">app</span><span class="token punctuation">:</span> <span class="token key atrule">image</span><span class="token punctuation">:</span> <span class="token string">'jc21/nginx-proxy-manager:latest'</span> <span class="token key atrule">restart</span><span class="token punctuation">:</span> unless<span class="token punctuation">-</span>stopped <span class="token key atrule">ports</span><span class="token punctuation">:</span> <span class="token punctuation">-</span> <span class="token string">'80:80'</span> <span class="token punctuation">-</span> <span class="token string">'81:81'</span> <span class="token punctuation">-</span> <span class="token string">'443:443'</span> <span class="token key atrule">volumes</span><span class="token punctuation">:</span> <span class="token punctuation">-</span> ./data<span class="token punctuation">:</span>/data <span class="token punctuation">-</span> ./letsencrypt<span class="token punctuation">:</span>/etc/letsencrypt
<span class="token key atrule">version</span><span class="token punctuation">:</span> <span class="token string">'3'</span> <span class="token key atrule">services</span><span class="token punctuation">:</span> <span class="token key atrule">app</span><span class="token punctuation">:</span> <span class="token key atrule">image</span><span class="token punctuation">:</span> <span class="token string">'jc21/nginx-proxy-manager:latest'</span> <span class="token key atrule">restart</span><span class="token punctuation">:</span> unless<span class="token punctuation">-</span>stopped <span class="token key atrule">ports</span><span class="token punctuation">:</span> <span class="token punctuation">-</span> <span class="token string">'80:80'</span>  <span class="token punctuation">-</span> <span class="token string">'81:81'</span>  <span class="token punctuation">-</span> <span class="token string">'443:443'</span>  <span class="token key atrule">volumes</span><span class="token punctuation">:</span> <span class="token punctuation">-</span> ./data<span class="token punctuation">:</span>/data  <span class="token punctuation">-</span> ./letsencrypt<span class="token punctuation">:</span>/etc/letsencrypt  
version: '3' services: app: image: 'jc21/nginx-proxy-manager:latest' restart: unless-stopped ports: - '80:80' - '81:81' - '443:443' volumes: - ./data:/data - ./letsencrypt:/etc/letsencrypt

上下左右键移动光标修改文件内容,修改完成后按一下 Esc退出'Insert'编辑模式,然后英文输入法输入 :wq 保存退出。

注意1:如果在命令行复制粘贴的内容有错位是不行的,可以英文输入法输入 :q! 不保存退出,然后用touch docker-compose.yml创建一个空文件,然后在SSH工具里面的文件夹中找到这个空文件打开将内容复制进去然后点击保存。

注意2:如果要修改冒号左边端口,需要先查看端口是否被占用(以 81 为例):

先下载工具,一般是默认有这个工具的

<span class="token function">apt</span> <span class="token function">install</span> <span class="token function">lsof</span>
<span class="token function">apt</span> <span class="token function">install</span> <span class="token function">lsof</span>  
apt install lsof

查看 81 端口是否被占用,如果被占用,重新自定义一个端口

<span class="token function">lsof</span> -i:81
<span class="token function">lsof</span> -i:81 
lsof -i:81

先跳转,需要在创建了docker-compose.yml的文件夹中才能运行该容器,如果已经在就直接下一步

<span class="token builtin class-name">cd</span> /root/data/docker_data/npm
<span class="token builtin class-name">cd</span> /root/data/docker_data/npm 
cd /root/data/docker_data/npm

开始创建容器

<span class="token function">docker-compose</span> up -d
<span class="token function">docker-compose</span> up -d 
docker-compose up -d

理论上我们就可以输入http://IP:81访问了,比如:192.3.12.333:81。默认登陆名和密码:

Email: admin@example.com Password: changeme
Email: admin@example.com Password: changeme 
Email: admin@example.com Password: changeme

然后就可以使用了。

如果需要更新应用,可以进行如下操作
跳转到docker-compose.yml的文件目录下

<span class="token builtin class-name">cd</span> /root/data/docker_data/npm
<span class="token builtin class-name">cd</span> /root/data/docker_data/npm 
cd /root/data/docker_data/npm

拉取最新的镜像

<span class="token function">docker-compose</span> pull
<span class="token function">docker-compose</span> pull 
docker-compose pull

重新更新当前镜像

<span class="token function">docker-compose</span> up -d
<span class="token function">docker-compose</span> up -d 
docker-compose up -d

跳转到docker-compose.yml的文件目录下

<span class="token builtin class-name">cd</span> /root/data/docker_data/npm
<span class="token builtin class-name">cd</span> /root/data/docker_data/npm 
cd /root/data/docker_data/npm

停止容器,此时不会删除映射到本地的数据

<span class="token function">docker-compose</span> down
<span class="token function">docker-compose</span> down 
docker-compose down

完全删除映射到本地的数据

<span class="token function">rm</span> -rf /root/data/docker_data/npm
<span class="token function">rm</span> -rf /root/data/docker_data/npm  
rm -rf /root/data/docker_data/npm

原文链接:https://blog.csdn.net/weixin_45694843/article/details/130092398

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享