Docker学习のDocker中部署静态页网站
前言:部署一个静态页网站,我们需要
- 常见映射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中部署静态页网站的更多相关文章
- Docker 在容器中部署静态网站
		Docker 在容器中部署静态网站 在容器中部署静态网站 设置容器的端口映射 run -P``--publish-all=true|false:容器暴露的所有端口进行映射 -p``--publish= ... 
- Docker学习(5) 在docker中部署静态网站
		在容器中部署静态网站 设置容器的端口映射 在容器中部署静态网站 - Nginx部署流程 1 创建映射80端口的交互式容器 2 安装Nginx 3 安装文本编辑器vim 4 创建静态页面 5 修改N ... 
- Docker 案例: 在容器中部署静态网站
		----------------知识点------------ 容器的端口映射: docker run [-P] [-p] -P,–publish-all=true | false,大写的P表示为 ... 
- 在CentOS 上搭建nginx来部署静态页面网站
		在centOs 上搭建nginx来部署静态页面网站 一.部署服务器环境 nginx:轻量级.高性能的HTTP及反向代理服务器,占用内存少,并发能力强,相比老牌的apache作为web服务器,性能更加卓 ... 
- 如何在IIS6,7中部署ASP.NET网站
		http://www.cnblogs.com/fish-li/archive/2012/02/26/2368989.html 阅读目录 开始 查看web.config文件 在IIS中创建网站 IIS6 ... 
- 如何在IIS6,7中部署ASP.NET网站(转载)
		查看web.config文件 web.config通常会放在网站的根目录,这个文件中包含了一最重要的网站运行参数.比如: connectionStrings,httpHandlers,httpModu ... 
- 在IIS中部署Asp.Net网站
		在IIS中部署Asp.Net网站 1.添加IIS或者删除IIS,在控制面板=>程序和功能=>打开或关闭功能 启动iis,右键计算机=>管理=>服务和应用程序=>Inter ... 
- 在IIS6,7中部署ASP.NET网站[转]
		阅读目录 开始 查看web.config文件 在IIS中创建网站 IIS6 添加扩展名映射 IIS6 无扩展名的映射 目录的写入权限 SQL SERVER的配置 在IIS7中部署ASP.NET程序 8 ... 
- 在IIS6,7中部署ASP.NET网站
		查看web.config文件 ASP.NET网站与一般的桌面程序不同,不是拷贝过来就能运行的(数据库连接除外). 要想运行它,通常需要一些配置过程.但是,我们到底需要配置什么呢?答案是:查看web.c ... 
随机推荐
- Vim用法AAAAA
			.linux系统中如何进入退出vim编辑器,方法及区别 我们当然要保存并退出了,然后下一步了.这时,我们要按键盘左上角的"ESC",留意到了没有?左下角的插入状态不见了,如图. 然 ... 
- C++——编译器运行过程
			C++ 编译过程简介 C/C++程序编译流程: 预处理->编译->汇编->链接 具体的就是: 源代码(source coprede)→预处理器(processor)→编译器(co ... 
- 021_IO流
			IO流 I——input 输入 O——Output 输出 文件 File 所有文件类的父类 创建方式 File file = new File("文件路径"); 文件对象常用的方法 ... 
- VS2015 定时服务及控制端
			一. 服务端 如下图—新建项目—经典桌面—Windows服务—起名svrr 2. 打到server1 改名为svrExecSqlInsert 右击对应的设计界面,添加安装服务目录结构如图 3. sv ... 
- 4-Ubuntu-启动/关闭/重启mysql服务
			启动: sudo service mysql start 关闭: sudo service mysql stop 重启: sudo service mysql restart 
- mac 如何卸载node和npm采坑之旅
			因为本地npm一直报错,所以决定直接卸载node和npm,重新装.第一次卸载,具体咱也不会呀!能咋整呢,百度呗 茫茫百度中各种找呀,找到一个转载最多的方法 sudo npm uninstall npm ... 
- Async await 异步编程说明
			希望在编程上有些许提高所以 最近连续2篇博客都在说明多线程和异步编程的使用,异步和多线程之间区别请自行百度,因为理解不是特别透彻就不在叙述以免误导大家,这里写下新研究整理 task 和 await ... 
- Android studio的ERROR: Unable to resolve dependency for 错误
			同事拷贝一份工程给我,在我这里用AS编译的时候出现这个错误.按照网上很多的方法都不行,后来终于可以. 在AS中打开FILE->Setting->gradle->,在右边service ... 
- pandas--层次化索引
			层次化索引是pandas的一项重要功能,它使你能在一个轴上拥有多个(两个以上)索引级别. 创建一个Series,并用一个由列表或数组组成的列表作为索引. data=Series(np.random.r ... 
- 移动端布局 + iscroll + 滚动事件
			<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name ... 
