安装docker的操作前面文章有提及,这里就不再赘述。
docker安装:https://blog.csdn.net/longyq/article/details/116671392
腾讯云服务器:
目前正在活动期间,38元一年很划算,有需要的朋友可以去买:
[腾讯云] : https://curl.qcloud.com/R54vzsHX
以上这两个网址可以直达活动页面。
我们从安装nginx开始:
安装nginx:
1、拉取nginx
```powershell docker pull nginx ``````powershell docker pull nginx ``````powershell docker pull nginx ```
2、运行nginx
-<span class="token operator">-</span>没有挂载文件 docker run <span class="token operator">--</span>name=nginxCoontain<span class="token operator">-</span>1 <span class="token operator">-</span>d <span class="token operator">-</span>p 8889:80 nginx <span class="token operator">--</span>挂载文件到指定文件。注:如果使用挂载,必须先创建对应文件夹。 docker run <span class="token operator">--</span>name nginx <span class="token operator">-</span>d <span class="token operator">-</span>p 9000:80 <span class="token operator">--</span>restart=always <span class="token operator">--</span>privileged=true <span class="token operator">-</span>v <span class="token operator">/</span>root<span class="token operator">/</span><span class="token keyword">data</span><span class="token operator">/</span>nginx<span class="token operator">/</span>conf<span class="token operator">/</span>nginx<span class="token punctuation">.</span>conf:<span class="token operator">/</span>etc<span class="token operator">/</span>nginx<span class="token operator">/</span>nginx<span class="token punctuation">.</span>conf <span class="token operator">-</span>v <span class="token operator">/</span>root<span class="token operator">/</span><span class="token keyword">data</span><span class="token operator">/</span>nginx<span class="token operator">/</span>html:<span class="token operator">/</span>etc<span class="token operator">/</span>nginx<span class="token operator">/</span>html <span class="token operator">-</span>v <span class="token operator">/</span>root<span class="token operator">/</span><span class="token keyword">data</span><span class="token operator">/</span>nginx<span class="token operator">/</span>log:<span class="token operator">/</span><span class="token keyword">var</span><span class="token operator">/</span>log<span class="token operator">/</span>nginx nginx-<span class="token operator">-</span>没有挂载文件 docker run <span class="token operator">--</span>name=nginxCoontain<span class="token operator">-</span>1 <span class="token operator">-</span>d <span class="token operator">-</span>p 8889:80 nginx <span class="token operator">--</span>挂载文件到指定文件。注:如果使用挂载,必须先创建对应文件夹。 docker run <span class="token operator">--</span>name nginx <span class="token operator">-</span>d <span class="token operator">-</span>p 9000:80 <span class="token operator">--</span>restart=always <span class="token operator">--</span>privileged=true <span class="token operator">-</span>v <span class="token operator">/</span>root<span class="token operator">/</span><span class="token keyword">data</span><span class="token operator">/</span>nginx<span class="token operator">/</span>conf<span class="token operator">/</span>nginx<span class="token punctuation">.</span>conf:<span class="token operator">/</span>etc<span class="token operator">/</span>nginx<span class="token operator">/</span>nginx<span class="token punctuation">.</span>conf <span class="token operator">-</span>v <span class="token operator">/</span>root<span class="token operator">/</span><span class="token keyword">data</span><span class="token operator">/</span>nginx<span class="token operator">/</span>html:<span class="token operator">/</span>etc<span class="token operator">/</span>nginx<span class="token operator">/</span>html <span class="token operator">-</span>v <span class="token operator">/</span>root<span class="token operator">/</span><span class="token keyword">data</span><span class="token operator">/</span>nginx<span class="token operator">/</span>log:<span class="token operator">/</span><span class="token keyword">var</span><span class="token operator">/</span>log<span class="token operator">/</span>nginx nginx--没有挂载文件 docker run --name=nginxCoontain-1 -d -p 8889:80 nginx --挂载文件到指定文件。注:如果使用挂载,必须先创建对应文件夹。 docker run --name nginx -d -p 9000:80 --restart=always --privileged=true -v /root/data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /root/data/nginx/html:/etc/nginx/html -v /root/data/nginx/log:/var/log/nginx nginx
–name:设置容器的名称。
-d:表示在后台运行容器。
-p:指定端口映射。8889是宿主机的端口,80是Nginx容器内部的端口。
nginx:表示根据nginx镜像运行容器。
这时,我们访问:http://127.0.0.1:8889/
看到如下画面,说明nginx正常运行了。
Net Core实例运行
如何将一个asp.net core程序打包成镜像,部署docker内,并将同一个镜像运行成三个容器的操作,前面有相关文章不再赘述。https://blog.csdn.net/longyq/article/details/122682292
分别运行在8090,8091,8092端口上。
注意:
因为nginx在docker内部,所以我们要配置nginx首先就得进入docker:
docker exec <span class="token operator">-</span>it nginxCoontain<span class="token operator">-</span>1 bashdocker exec <span class="token operator">-</span>it nginxCoontain<span class="token operator">-</span>1 bashdocker exec -it nginxCoontain-1 bash
这里我们知道nginx的配置文件放在/etc/nginx/中,于是我们进入nginx文件夹:
cd <span class="token operator">/</span>etc<span class="token operator">/</span>nginx<span class="token operator">/</span>cd <span class="token operator">/</span>etc<span class="token operator">/</span>nginx<span class="token operator">/</span>cd /etc/nginx/
打开nginx文件夹中的nginx.conf文件:
<span class="token function">cat</span> nginx<span class="token punctuation">.</span>conf<span class="token function">cat</span> nginx<span class="token punctuation">.</span>confcat nginx.conf
可以看到如下画面,说明具体的配置文件在conf.d文件夹下面的default.conf
我们进入conf.d文件夹:
cd conf<span class="token punctuation">.</span>dcd conf<span class="token punctuation">.</span>dcd conf.d
打开 default.conf 文件:
vim default<span class="token punctuation">.</span>confvim default<span class="token punctuation">.</span>confvim default.conf
修改成功后保存。
vim如何修改文件,保存文件,请看:https://blog.csdn.net/longyq/article/details/122714827
来测试一下,config文件是否报错;
nginx <span class="token operator">-</span>tnginx <span class="token operator">-</span>tnginx -t
如果成功,会有OK,或者,success字样。
退出docker,重启nginx:
<span class="token keyword">exit</span><span class="token keyword">exit</span>exit
docker restart nginxCoontain<span class="token operator">-</span>1docker restart nginxCoontain<span class="token operator">-</span>1docker restart nginxCoontain-1
ok!!!
访问一下:http://127.0.0.1:8889/
刷新一下
在刷新一下
看到这里,相信你已经成功了!!!恭喜。。。。。
原文链接:https://blog.csdn.net/longyq/article/details/122714095