前言:部署一个静态页网站,我们需要

  • 常见映射80端口的交互式容器
  • 安装Nginx(或其他服务器)
  • 安装文本编辑器vim
  • 创建静态页面
  • 修改Ngnix的配置文件
  • 运行Ngnix
  • 验证网站的防高温

一、设置容器的端口映射

访问网站需要开放端口,因此需要设置端口映射,docker的映射命令是:

run [-P][-p]

-P(大写)会对容器所有暴露的端口进行映射,-p可以指定映射的端口

命令形式:

  • ContainerPort(只指定容器的端口,主机的随机映射)

docker run -p 80 -i -t ubuntu /bin/bash

  • hostPort :containerport(指定宿主机和容器的端口)

docker run -p 8080:80 -i -t ubuntu /bin /bash

  • ip:containerPort(容器的ip和容器的端口)

docker run -p 0.0.0.0:80 -i -t ubuntu /bin/bash

  • ip:hostPort:containerPort(容器的ip 宿主机端口 容器端口)

docker run -p 0.0.0.0:8080:80 -i -t ubuntu /bin/bash

三、创建

创建docker容器  dcoker run -p 80 --name web -i-t ubuntu /bin/bash

安装nginx             apt-get install -y nginx      如果提示 unale to get list 我们sudo apt-get update更新下再安装

安装vim                 apt-get install -y nginx

创建目录                mk dir -p var/www/html     cd var/www/html  然后vim 一个index.html

查看nginx的位置    whereis nginx

  查看nginx的文件的位置 ls /etc/nginx

打开default文件,修改root的位置为刚才创建网站的位置root /var/www/html;cd / 切换到根目录,输入nginx运行,ps -ef查看是否在运行

然后ctrl+p,ctrl+q退出容器,查看此容器

  curl查看

  以上是宿主主机访问,我们docker inspect web查看容器的ip地址为

  

  访问成功

四、ip和端口问题

docker stop web    命令停止

docker start -i web 重新开始进入我们发现nginx没有运行(没有-i情况不会进入docker容器,而是在虚拟机)

  此时可以在内部输入nginx打开nginx服务器,也可以在外部docker exec web nginx启动

  查看docker top web查看容器中的进程,发现ip地址和端口都不一样了

说明:容器重新启动,IP地址和端口会改变

Docker学习のDocker中部署静态页网站的更多相关文章

  1. Docker 在容器中部署静态网站

    Docker 在容器中部署静态网站 在容器中部署静态网站 设置容器的端口映射 run -P``--publish-all=true|false:容器暴露的所有端口进行映射 -p``--publish= ...

  2. Docker学习(5) 在docker中部署静态网站

    在容器中部署静态网站 设置容器的端口映射 在容器中部署静态网站  -  Nginx部署流程 1 创建映射80端口的交互式容器 2 安装Nginx 3 安装文本编辑器vim 4 创建静态页面 5 修改N ...

  3. Docker 案例: 在容器中部署静态网站

    ----------------知识点------------ 容器的端口映射: docker  run  [-P] [-p] -P,–publish-all=true | false,大写的P表示为 ...

  4. 在CentOS 上搭建nginx来部署静态页面网站

    在centOs 上搭建nginx来部署静态页面网站 一.部署服务器环境 nginx:轻量级.高性能的HTTP及反向代理服务器,占用内存少,并发能力强,相比老牌的apache作为web服务器,性能更加卓 ...

  5. 如何在IIS6,7中部署ASP.NET网站

    http://www.cnblogs.com/fish-li/archive/2012/02/26/2368989.html 阅读目录 开始 查看web.config文件 在IIS中创建网站 IIS6 ...

  6. 如何在IIS6,7中部署ASP.NET网站(转载)

    查看web.config文件 web.config通常会放在网站的根目录,这个文件中包含了一最重要的网站运行参数.比如: connectionStrings,httpHandlers,httpModu ...

  7. 在IIS中部署Asp.Net网站

    在IIS中部署Asp.Net网站 1.添加IIS或者删除IIS,在控制面板=>程序和功能=>打开或关闭功能 启动iis,右键计算机=>管理=>服务和应用程序=>Inter ...

  8. 在IIS6,7中部署ASP.NET网站[转]

    阅读目录 开始 查看web.config文件 在IIS中创建网站 IIS6 添加扩展名映射 IIS6 无扩展名的映射 目录的写入权限 SQL SERVER的配置 在IIS7中部署ASP.NET程序 8 ...

  9. 在IIS6,7中部署ASP.NET网站

    查看web.config文件 ASP.NET网站与一般的桌面程序不同,不是拷贝过来就能运行的(数据库连接除外). 要想运行它,通常需要一些配置过程.但是,我们到底需要配置什么呢?答案是:查看web.c ...

随机推荐

  1. 22. Jmeter NON GUI模式

    一般情况下我们都是在NonGUI模式下运行jmeter.这样做有两个好处 节省系统资源,能够产生更大的负载 可以通过命令行参数对测试场景进行更精细的配置 需求:模拟5个用户同时访问百度首页的情况 步骤 ...

  2. vue组件通信之非父子组件通信

    什么顺序不顺序的.. 先来说说非父子组件通信. 首先,我们先来了解下vue中的 1.$emit  触发当前实例上的事件,附加参数都会传给监听器回调. 2.$on  监听当前实例上的自定义事件.事件可以 ...

  3. 用node-http-proxy搭建代理

    程序员三大必备网站是:Google.Github.StackOverflow.如果你还在用Baidu搜索技术文章的话,我想说的是,少年你已经被鄙视很多年了,赶紧换成谷歌吧,不要再被鄙视了!Github ...

  4. 高级UI晋升之常用View(三)上篇

    更多Android高级架构进阶视频学习请点击:https://space.bilibili.com/474380680本篇文章将先从以下两个内容来介绍常用View: [RecycleView] [Ca ...

  5. js模块化的历史

    了解模块化开发的历史,可以帮助我们理解 模块化开发的形式是怎么样的,对我们深入学习模块化开发会有很大的帮助: 一.服务器端JS的模块化 nodeJS的出现   ------官网: http://nod ...

  6. Docker搭建 oracle

    1-1.docker run -d -p 11521:1521 --name sf2_oracle11g 镜像ID #  -p:端口映射,此处映射主机端口 1-2.查看启动 docker logs - ...

  7. 2019-7-15-WPF-测试触摸设备发送触摸按下和抬起不成对

    title author date CreateTime categories WPF 测试触摸设备发送触摸按下和抬起不成对 lindexi 2019-7-15 9:3:51 +0800 2019-0 ...

  8. python_django__验证码

    验证码:在用户注册/登陆时使用,为了防止暴力请求,减轻服务器压力,也是防止csrf的一种方式. 运行环境:python django 对应template模块htm函数: 登陆页面: <!DOC ...

  9. line-height 行高的使用

    line-height:normal; 默认  字体 line-height:1.5; line-height:200%; line-height:50px;  ps : 固定的值 line-heig ...

  10. 1.Struts2快速入门

    Struts2是一个基于MVC设计模式的Web层框架 Web层框架的特点:前端控制器模式 快速入门 1.下载Struts2的框架包 https://struts.apache.org/ 2.导入jar ...