Docker Nginx容器制作部署实现方法

Docker Nginx容器制作部署实现方法,第1张

DockerNginx容器制作部署实现方法

本文详细介绍了DockerNginx容器的制作和部署。原文根据示例代码非常详细,对大家的学习培训或者工作有一定的参考价值,盆友一定要参考。

快速启动

1.在DockerHub上搜索nginx图片

docker搜索nginx

2.获取官网的Nginx图片

码头工人拉nginx

3.在本地镜像目录中找到存储库为nginx的镜像。

docker图像nginx

存储库标记映像ID创建大小
nginx最新4bb46517cac34周前133MB

4.以下指令应用Nginx容器中的默认设置来启动NGINX容器案例:

复制的代码如下:dockerrun-RM-namenginx-test-p8080:80-dnginx

其中,该指令的四个命令行参数的含义如下。

  • -rm:容器停止工作后,容器文档会自动删除。
  • -namenginx-test:容器的名字叫做nginx-test,名字是自己定义的。
  • -p:端口号被映射为本地8080端口到容器内部的80端口号。
  • -d:容器启动后,在后台程序中
  • 主参数后的-dnginx是特定启动的容器映像的名称。
  • 5.开始查询docker容器。

    码头集装箱ps

    容器ID映像命令创建了状态端口名称
    ACB0e263dff3nginx"/docker-entrypoint。…"10秒前涨了9秒0.0.0:8080->;80/TCPnginx-测试

    6.在电脑浏览器中浏览。我这边是腾讯云主机。只需浏览外部网络地址的ip端口号

    在电脑浏览器中打开http://ip:8080,实际效果如下。

    部署服务项目

    1.建立本地文件目录,存储Nginx的相关文件和信息。

    mkdir-p/home/nginx/www/home/nginx/logs/home/nginx/conf

    其中包括:

  • Www:文件目录将被投影为配备nginx容器的虚拟目录。
  • Logs:文件目录将被投影为nginx容器的日志文件目录。
  • Conf:文件目录中的环境变量将被投影为nginx容器的环境变量。
  • 2.将容器中默认设置环境变量Nginx复制到本地当前目录下的conf文件目录中,容器ID可以查询dockerps指令键入中的第一列:

    dockerps

    容器ID映像命令创建了状态端口名称
    ACB0e263dff3nginx"/docker-entrypoint。…"10秒前涨了9秒0.0.0:8080->;80/TCPnginx-测试

    dockerCPACB0e263dff3:/etc/nginx/home/nginx/conf

    3.终止此容器

    码头集装箱停靠站nginx-测试

    注意进入容器的命令:dockerexec-itnginx-test/bin/bash。

    4.部署说明

    dockerrun--rm-d-p8080:80--namenginx-test-web\ -v/home/nginx/www:/usr/share/nginx/html\ -v/home/nginx/conf/nginx:/etc/nginx\ -v/home/nginx/logs:/var/log/nginx\ nginx

    说明显示:

  • -rm:容器停止工作后,容器文档会自动删除。
  • -p8080:80:将容器的80端口映射到服务器的8080端口号。
  • -namenginx-test-web-web:将容器命名为nginx-test-web。
  • -v/home/nginx/www:/usr/share/nginx/html:初始化我们自己的www文件目录到容器的/usr/share/nginx/html。
  • -v/home/nginx/conf/nginx:/etc/nginx:将我们自己的conf下的nginx文件目录初始化到容器的/etc/nginx下。
  • -v/home/nginx/logs:/var/log/nginx:将我们自己的日志初始化到容器的/var/log/nginx。
  • 5.启动上述指令后,转到/home/nginx/www文件目录:

    CD/home/nginx/www/
    VIindex.html

    <!DOCTYPEhtml> <html> <head> <metacharset="utf-8"> <title>Nginxtest!!!</title> </head> <body> <h1>我的第一个题目</h1> <p>我的第一个文章段落。</p> </body> </html>

    6.在计算机浏览器中浏览

    在电脑浏览器中键入http://外网地址ip:8080/,输出结果如下。如果浏览时出现403错误,应该是index.html的文件权限不够,可以给644。

    适用的HTTPS,HTTP2

    1.在/home/nginx/conf/nginx下的文件目录中创建新的根证书。

    mkidr证书

    2.形成资格证书

    opensslreq\ -x509\ -nodes\ -days365\ -newkeyrsa:2048\ -keyoutexample.key\ -outexample.crt

    上述说明的每个主要参数具有以下含义。

  • Req:解决资质证书签署需求。
  • -x509:表单自签名资格证书。
  • -nodes:绕过为资质证书密码设置的链接,让Nginx可以立即打开资质证书。
  • -第365天:资质证书有效期一年。
  • -newkeyrsa:2048:形成新的公钥,优化的算法是2048位rsa。
  • -keyout:新形成的公钥文档是当前目录下的example.key。
  • -out:新形成的资质证书文档是当前目录下的example.crt。
  • 一个成功的文件目录将空输出两个文档:example.key和example.crt

    3.HTTPS装备

    在/home/nginx/conf/nginx/conf.d文件目录下建立https.conf文档,加载以下内容:

    server{ listen443sslhttp2; server_namelocalhost; sslon; ssl_certificate/etc/nginx/certs/example.crt; ssl_certificate_key/etc/nginx/certs/example.key; ssl_session_timeout5m; ssl_ciphersHIGH:!aNULL:!MD5; ssl_protocolsSSLv3TLSv1TLSv1.1TLSv1.2; ssl_prefer_server_cipherson; location/{ root/usr/share/nginx/html; indexindex.htmlindex.htm; } }

    4.部署服务项目

    dockerrun--rm-d-p8080:80-p8081:443--namenginx-test-web\ -v/home/nginx/www:/usr/share/nginx/html\ -v/home/nginx/conf/nginx:/etc/nginx\ -v/home/nginx/logs:/var/log/nginx\ nginx

    5.快速检测

    Http://ip:8080/:浏览http
    https://IP:8081/:浏览https

    文章里的内容就这些了。期待对大家的学习和培训有所帮助,也期待大家的应用。

    欢迎分享,转载请注明来源:内存溢出

    原文地址:https://54852.com/zz/774069.html

    (0)
    打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
    上一篇 2022-05-03
    下一篇2022-05-03

    发表评论

    登录后才能评论

    评论列表(0条)

      保存