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

  • 常见映射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. jquery 弥补ie6不支持input:hover状态

    <!doctype html><html>    <head>    <meta charset="utf-8">    <t ...

  2. php连接mysql遇到的问题: (HY000/1130) 和 [caching_sha2_password]

    说明一下我的mysql是安装在虚拟机上的 所以遇到的第一个问题就是访问问题 解决: update user set host = '%' where user = 'root'; 重启mysql服务 ...

  3. Spring IOC源码分析(二):Bean工厂体系结构设计

    一. 概述 Spring容器通常指的是ApplicationContext的体系结构设计,即整个Spring框架的IOC功能,是通过ApplicationContext接口实现类来提供给应用程序使用的 ...

  4. git 常用命令 mv rm checkout revert reset

    关于上节讲的git add 时需要添加注释信息,也可以在git commit时再添加 laoni@DESKTOP-TPPLHIB MINGW64 /c/laoni/PycharmProjects/gi ...

  5. URL&HTTP协议&GET请求&POST请求

    1.什么是URL URL的全称是Uniform Resource Locator(统一资源定位符) 通过1个URL,能找到互联网上唯一的1个资源 URL就是资源的地址.位置,互联网上的每个资源都有一个 ...

  6. python接口自动化(post请求)

    python接口自动化(post请求) 一.post请求的作用:新增资源 二.data格式的参数请求(data是字典对象) #1.导包 import requests #2.调用post方法 #请求的 ...

  7. 并发编程 --进、线程池、协程、IO模型

    内容目录: 1.socket服务端实现并发 2.进程池,线程池 3.协程 4.IO模型 1.socket服务端实现并发 # 客户端: import socket client = socket.soc ...

  8. 2019-9-25-如何让-USB-设备不显示安全删除硬件弹出选项

    title author date CreateTime categories 如何让 USB 设备不显示安全删除硬件弹出选项 lindexi 2019-09-25 11:58:19 +0800 20 ...

  9. 搭建一个node.js项目

    初始化项目 新建一个文件夹,运行 npm init 初始化项目 mkdir okadaGo cd okadaGo npm init 按照提示输入一些项目的相关信息 D:\web\node>mkd ...

  10. python3添加requests库

    1.资源下载 https://codeload.github.com/psf/requests/zip/master https://www.python.org/ https://files.pyt ...