链接上文【.NET Core 3.1部署到Docker_关键我是你林哥啊的博客-CSDN博客】,部署到Ubuntu 后,系统因为晚上关机了,早上一开机,发现访问不了,通过命令一查
docker ps
docker ps可以查看正在运行的容器
发现昨天部署的.NET Core程序已经停止了,然后找到docker中所有的容器
docker ps -a
-a 列出所有的容器
然后将net01这个容器设置为开机自启动,因为前期运行的时候并没用自启动,所以只能更改他启动的策略了。
docker update 97c9bebdf779 --restart=always
* 说明:更改容器的状态
docker start 97c9bebdf779
*说明:启动容器
这样访问5015端口后,就可以访问了,不过,这样只能在本机访问,外部机器想要访问,就必须安装nginx。
1、下载Nginx
sudo apt-get install nginx
(卸载:sudo apt-get purge nginx nginx-common )
2、配置Nginx
nginx默认被下载到了etc文件夹中
cd /etc/nginx
编辑nginx.conf文件
sudo vim nginx.conf
(无vim的,可以使用【sudo apt install vim】命令进行下载),按i健进行编辑
nginx配置如下
server {
listen 80;
location / {
proxy_pass http://localhost:5015;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
注意事项:默认这样配置了,打开的并不是我们要转发的地址,需要将nginx中配置的如下两行默认代码注释掉
然后按Esc健,:wq!保存配置
.启动nginx
sudo service nginx start
.重载nginx配置
sudo nginx -s reload
(关闭nginx可以使用service nginx stop)
.设置为开机启动
systemctl enable nginx.service
通过systemctl status nginx.service查看启动状态
此时,转发就完成,通过其他的机器访问 http://172.17.160.95/swagger,就可以访问成功,效果如下: