设为首页 收藏本站
查看: 1001|回复: 0

[经验分享] 在Docker容器中部署静态网页的方法教程

[复制链接]

尚未签到

发表于 2018-5-26 11:35:18 | 显示全部楼层 |阅读模式
  步骤:
1.创建映射端口的交互式容器
docker run -p 80 --name web -i -t daocloud.io/ubuntu /bin/bash
2.安装Nginx
apt-get install -y nginx   不行需要更新一下apt-get update
3.安装文本编辑器vim
apt-get install -y vim
4.创建静态页面

        mkdir -p /var/www/html  
cd /var/www/html  
vim index.html  
  使用i切换到插入模式
  在index.html中写入以下内容:

<html>  
<head>  
<title>Nginx in Docker</title>  
</head>  
<body>Hello Docker</body>  
</html>  
  保存退出
  5.修改Nginx配置文件
vim /etc/nginx/sites-enabled/default
这样打开Nginx的配置文件之后会看见:

server {  
listen 80 default_server;  
listen [::]:80 default_server ipv6only=on;   
root /var/www/html;  
index index.html index.htm;  
    # Make site accessible from http://localhost/  
server_name localhost;  
location / {  
# First attempt to serve request as file, then  
# as directory, then fall back to displaying a 404.  
try_files $uri $uri/ =404;  
# Uncomment to enable naxsi on this location  
# include /etc/nginx/naxsi.rules  
}  
  这个时候修改root的内容,修改成咱们html文件所在的位置.保存退出.
  切换到根目录:
  cd /
  6.运行Nginx
  [plain] view plain copy
nginx
  可以使用ps -ef查看一下nginx是否运行了起来.
  使用Ctrl+p+q可以将容器放在后台运行.
  使用docker ps可以查看容器的运行效果.
  也可以使用docker port web查看容器的端口映射:
  80/tcp -> 0.0.0.0:32768
  7.验证网站访问
  [plain] view plain copy
curl http://127.0.0.1:32768
  也可以在浏览器中访问这个页面:
  [csharp] view plain copy
http://127.0.0.1:32768
  使用docker inspect web查看容器的ip地址:
  [plain] view plain copy
&quot;NetworkSettings&quot;: {  
&quot;Bridge&quot;: &quot;docker0&quot;,  
&quot;Gateway&quot;: &quot;172.17.42.1&quot;,  
&quot;GlobalIPv6Address&quot;: &quot;&quot;,  
&quot;GlobalIPv6PrefixLen&quot;: 0,  
&quot;IPAddress&quot;: &quot;172.17.0.1&quot;,  
&quot;IPPrefixLen&quot;: 16,  
&quot;IPv6Gateway&quot;: &quot;&quot;,  
&quot;LinkLocalIPv6Address&quot;: &quot;fe80::42:acff:fe11:1&quot;,  
&quot;LinkLocalIPv6PrefixLen&quot;: 64,  
&quot;MacAddress&quot;: &quot;02:42:ac:11:00:01&quot;,  
&quot;PortMapping&quot;: null,  
&quot;Ports&quot;: {  
&quot;80/tcp&quot;: [  
{  
&quot;HostIp&quot;: &quot;0.0.0.0&quot;,  
&quot;HostPort&quot;: &quot;32768&quot;  
}  
]  
}  
},
  可以看到&quot;IPAddress&quot;: &quot;172.17.0.1&quot;,这是容器的IP地址.
  使用
  [plain] view plain copy
curl http://127.17.0.1
  就可以直接查看了.
  也可以在浏览器中使用这个容器的IP地址.
  最后需要说明一点,如果使用命令将容器停止:
  [plain] view plain copy
docker stop web
  然后开启容器:
  [plain] view plain copy
docker start -i web
  这个时候使用:
  [plain] view plain copy
ps -ef
  发现nginx是没有启动的.
  使用Curl+p+q将容器放入后台.
  使用:
  [plain] view plain copy
docker exec web nginx
  启动nginx服务.
  使用:
  [plain] view plain copy
curl http://172.17.0.1
  发现不行了.
  这个时候我们使用:
  [plain] view plain copy
docker inspect web
  看到以下输出结果:
  [csharp] view plain copy
&quot;NetworkSettings&quot;: {  
&quot;Bridge&quot;: &quot;docker0&quot;,  
&quot;Gateway&quot;: &quot;172.17.42.1&quot;,  
&quot;GlobalIPv6Address&quot;: &quot;&quot;,  
&quot;GlobalIPv6PrefixLen&quot;: 0,  
&quot;IPAddress&quot;: &quot;172.17.0.2&quot;,  
&quot;IPPrefixLen&quot;: 16,  
&quot;IPv6Gateway&quot;: &quot;&quot;,  
&quot;LinkLocalIPv6Address&quot;: &quot;fe80::42:acff:fe11:2&quot;,  
&quot;LinkLocalIPv6PrefixLen&quot;: 64,  
&quot;MacAddress&quot;: &quot;02:42:ac:11:00:02&quot;,  
&quot;PortMapping&quot;: null,  
&quot;Ports&quot;: {  
&quot;80/tcp&quot;: [  
{  
&quot;HostIp&quot;: &quot;0.0.0.0&quot;,  
&quot;HostPort&quot;: &quot;32769&quot;  
}  
]  
}  
},
  发现容器的IP地和端口号都发生了变化,这个时候我们能知道,容器在重启之后的IP地址和端口号都会发生变化.

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-481313-1-1.html 上篇帖子: Kubernetes 架构(下) 下篇帖子: Docker中配置国内镜像
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

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