架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 6359|回复: 1

Docker 创建一个Nginx容器

[复制链接]
发表于 2018-9-28 13:04:48 | 显示全部楼层 |阅读模式
运行环境:Centos 7
docker 版本:Docker version 1.13.1, build 6e3bb8e/1.13.1

1:拉取nginx镜像



2:运行nginx容器



了解Nginx 镜像的配置文件位置
日志文件位置:/var/log/nginx
配置文件位置: /etc/nginx
资源存放的位置: /usr/share/nginx/html


最后,在容器里面执行nginx命令启动

访问:http://ip 即可访问到我们的nginx容器了,如下图:

QQ截图20180928120032.jpg

3:可配置的nginx容器

这里说的可配置,并不是nginx容器里面不可以配置,我们是在宿主机去配置,然后让容器读取宿主机的文件来运行,这样,就省得我们每次去容器里面修改配置了。

首先,我们在home文件夹下面创建3个文件



docker_nginx/log 日志文件夹
docker_nginx/conf nginx配置文件夹
docker_nginx/html 资源存放文件夹

QQ截图20180928121626.jpg

复制我们docker中nginx 的配置文件

上面命令会复制整个带nginx的目录,还是用下面这条命令吧,只复制配置文件




QQ截图20180928122029.jpg

QQ截图20180928123100.jpg

关闭掉我们的容器并删除




将Nginx 镜像和我们本机的目录进行映射,方便我们修改文件



运行到这里,我们可能还是会发现访问http://ip/ 无法访问。继续网上查资料,参考如下:

我之前运行的时候,一般都采用交互式:

-i 保证容器的stdin开启-t 为容器生成一个tty终端,在命令的最后加一个/bin/bash来保证可以交互。但是实际上,nginx并没有运行,导致我以为容器的端口绑定不是持久化的。

接下来我们需要关掉,并删除我们的容器,再按照如下的命令重启一个:





我们重新访问http://ip 是获取不到内容的,因为,我们宿主机/home/docker_nginx/html/目录下面没有任何文件,

我们在宿主机/home/docker_nginx/html/目录下面新建一个index.html文件,输入随意内容,如下图:



QQ截图20180928130316.jpg

刷新http://ip 网址,可以正常访问了,如下图:

QQ截图20180928130435.jpg
进入nginx容器


或者执行命令



后面的 bin/bash 是什么意思?
这是表示载入容器后运行bash ,docker中必须要保持一个进程的运行,要不然整个容器就会退出。
这个就表示启动容器后启动bash








上一篇:oracle通过sql查看表的结构
下一篇:程序员段子和图片
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-3-29 03:51

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表