前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker学习笔记[nginx]

Docker学习笔记[nginx]

作者头像
写一点笔记
发布2020-09-02 09:38:54
4260
发布2020-09-02 09:38:54
举报
文章被收录于专栏:程序员备忘录

Docker是一个开源的应用容器引擎。基于Go语言开发,应用容器好理解,就是类似tomcat是Servlet容器一样,那么Docker肯定具有广泛的兼容性。实际上Docker可以部署各种应用。包括mysql、nginx、tomcat等等。那么引擎又是什么意思?是要表达快和猛烈的能力吗?我们目前就这么理解吧。因为采用Go语言开发,显然是很快的。因为Go语言和Java等语言在实现上有点不一样。您可以搜索相关的资料好好学习一下。

既然是强大的容器,那么就什么都可以放进去并运行它,显然Docker中的应用是进程隔离的。在日常运维和部署时,一个应用使用的资源是有限的,而Docker很好的进行资源的整合。让应用在自己需要的资源条件下进行运行,从而使得我们的应用都被安排的井井有条。

在安装nginx时候,首先要通过Docker获取nginx版本。在此之前,您需要到https://hub.Docker.com/_/nginx?tab=tags&page=2寻找您要安装的nginx版本。

然后按提示进行安装

代码语言:javascript
复制
docker pull nginx:1.18.0

安装成功之后

您可以通过Docker images来查看Docker中的镜像程序

之后就需要将我们的镜像跑起来,

代码语言:javascript
复制
docker run -it -d --name mynginx131 -p 80:80 -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/www:/home/nginx/www --privileged --net=host nginx:1.18.0

比如上边的指令想表达的意思就是将镜像程序nginx:1.18.0以mynginx131为运行名称。把操作系统的80端口映射到Docker的80端口,然后让该程序进行监听。该程序使用的/etc/nginx/nginx.conf 和/home/nginx/www 均采用-V指定的操作系统文件目录或文件。这里搜索一些run命令相关的参数说明。

代码语言:javascript
复制
-a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;
-d: 后台运行容器,并返回容器ID;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-P: 随机端口映射,容器内部端口随机映射到主机的端口
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
--name="nginx-lb": 为容器指定一个名称;
--dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;
--dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;
-h "mars": 指定容器的hostname;
-e username="ritchie": 设置环境变量;
--env-file=[]: 从指定文件读入环境变量;
--cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;
-m :设置容器使用内存最大值;
--net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;
--link=[]: 添加链接到另一个容器;
--expose=[]: 开放一个端口或一组端口;
--volume , -v: 绑定一个卷

您可以执行docker stop mynignx131来停止正在运行的Docker应用。并使用Docker ps -a来查看Docker应用的启动效果

这里的exited表示距离当前的退出时间差。

也同样也可以使用docker start mynginx131来重新启动或者docker restart mynginx131来启动我们的应用。

您也可以登录到Docker容器中。执行docker exec -it 58bb2a7f1f61 /bin/bash。这里的58bb2a7f1f61就是docker ps -a的第一列[container Id].在进入子应用的之后,您可以给您的应用安装一些插件或者修改。

如果您想退出Docker容器的话,您可以执行exit指令。

当然如果您的应用启动失败了。您也可以执行docker logs 58bb2a7f1f61来查看应用的启动的失败异常。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-09-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员备忘录 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档