构建Docker镜像(三)

作者:李晓辉

联系方式:Xiaohui_li@foxmail.com

QQ:939958092

一、建立Dockerfile

1、准备文件

新建一个目录和一个 Dockerfile

mkdir /steven

touch /steven/Dockerfile

image

2、更新Dockerfile

这个步骤是在设计镜像,如果你需要在镜像内包含什么软件,将来开放哪些端口,里面包含什么文件,都要写进去

我这里使用的基本镜像是centos7,我要在将来生成的镜像内包含httpd和vim两个软件,并且要对外开放80端口,并且容器生成时要自动启动网站

# This is a Dockerfile created by xiaohui

FROM centos:7

MAINTAINER Xiaohui Li <xiaohui_li@foxmail.com>

# Install the httpd and vim program to image

RUN yum install httpd vim -y

RUN echo "/usr/sbin/httpd" >> /etc/bashrc

EXPOSE 80

ADD index.html /var/www/html

CMD ["systemctl enable httpd"]

image

二、开始Build Docker镜像

1、准备文件

因为我们需要打包一个index.html,这里我们先建立出来,构建镜像时会自动上传

image

2、构建镜像

 

image

image

3、查看镜像

docker images

image

4、创建并启动容器

docker run -dit --name test cnlxh/linux:httpdvim /bin/bash

docker start test

docker ps –a

image

三、测试容器是否成功

1、预期结果

最后的效果预期为:

1、    容器中内置了httpd和vim两个软件

2、    /var/www/html处有一个index.html,并且有内容

3、    开启了80端口

4、    并且设定好容器启动时,自动启动网站

2、内置软件检查

yum list installed | grep -e ^httpd -e ^vim

image

3、网站内容检查

cat /var/www/html/index.html

image

4、网站自动启动

tail -n 1 /etc/bashrc

image

image

5、端口开放

docker ps

image

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/259532.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

你必须很努力,才能看上去毫不费力

世上没有一件工作不辛苦&#xff0c;没有一处人事不复杂。 从今天起&#xff0c;每天微笑吧&#xff0c; 世上除了生死&#xff0c;都是小事。 不管遇到了什么烦心事&#xff0c;都不要自己为难自己&#xff1b; 无论今天发生多么糟糕的事&#xff0c;都不应该感到悲伤。 今天是…

HDU 4631 Sad Love Story 平面内最近点对

http://acm.hdu.edu.cn/showproblem.php?pid4631 题意: 在平面内依次加点,求每次加点后最近点对距离平方的和 因为是找平面最近点对...所以加点以后这个最短距离一定是递减的...所以最后会形成这样一个函数图像 所以我们只要从后往前依次删点即可... 15秒惊险水过...不过我最小…

itoa的用法

功能&#xff1a;将任意类型的整数转换为字符串。在<stdlib.h>中与之有相反功能的函数是atoi。 用法&#xff1a;char*itoa(int value,char*string,int radix); int value 被转换的整数&#xff0c;char *string 转换后储存的字符数组&#xff0c;int radix 转换进制数…

Tomcat与Gzip与缓存

国内私募机构九鼎控股打造APP&#xff0c;来就送 20元现金领取地址&#xff1a;http://jdb.jiudingcapital.com/phone.html内部邀请码&#xff1a;C8E245J &#xff08;不写邀请码&#xff0c;没有现金送&#xff09;国内私募机构九鼎控股打造&#xff0c;九鼎投资是在全国股份…

java竖向菜单,垂直滑动菜单

www.lanrentuku.comtd {font-size: 12px;}width"200" />height9 src"images/bit05.gif" width8alignabsMiddle> href"javascript:void(null)">文管产品 src"images/bit06.gif" width8 alignabsMiddle> href"http://w…

[转]第一章 Windows Shell是什么 【来源:http://blog.csdn.net/wangqiulin123456/article/details/7987862】...

一个操作系统外壳的不错的定义是它是一个系统提供的用户界面&#xff0c;它允许用户执行公共的任务&#xff0c;如访问文件系统&#xff0c;导出执行程序&#xff0c;改变系统设置等。MS-DOS有一个Command.COM扮演着这个角色。然而Windows已经有了图形界面环境&#xff0c;他的…

20155222卢梓杰 《Java程序设计》第1周学习总结

20155222 《Java程序设计》第1周学习总结 教材学习内容总结 JDK是一个工具程序&#xff0c;包括了JAVA程序语言&#xff0c;工具程序与JRE&#xff0c;JRE包括了部署技术&#xff0c;JAVA SE API 与 JVM。 教材学习中的问题和解决过程 第一章&#xff1a;JDK的变量和选项如何设…

DateTime.Now.ToString() 用法

//2008年4月24日 System.DateTime.Now.ToString("D"); //2008-4-24 System.DateTime.Now.ToString("d"); //2008年4月24日 16:30:15 System.DateTime.Now.ToString("F"); //2008年4月24日 16:30 System.DateTime.No…

GAP平台

2019独角兽企业重金招聘Python工程师标准>>> 转载于:https://my.oschina.net/u/2441327/blog/846754

二进制与十进制的转换

本文参考:http://www.360doc.com/content/11/0308/14/5327079_99222581.shtml文献整理所得。 1.正整数的十进制转换为二进制. 十进制整数转换为二进制整数采用"除2取余&#xff0c;逆序排列"法。具体做法是&#xff1a;用2整除十进制整数&#xff0c;可以得到一个商…

php记录已经点击过,最近一次的PHP面试题记录,office已到手!

1、explain 具体哪些等级具体有 system、const、range、index、all2、MySQL 优化避免全表查询&#xff0c;首先应考虑在 where 及 order by 涉及的列上建立索引应尽量避免在 where 子句中对字段进行 null 值判断&#xff0c;否则将导致引擎放弃使用索引而进行全表扫描 (可以将字…

原生Ajax讲解

典型的http通信&#xff1a;浏览器向服务器发出请求&#xff0c;服务器向客户端返回响应&#xff0c;浏览器重新加载页面&#xff0c;这种不连续的页面加载方式导致用户的体验变得杂乱&#xff0c;缺乏连贯性。 如&#xff1a; 在一般的web应用程序中&#xff0c;用户填写表单字…

16、Python与设计模式--模板模式

一、股票查询客户端 投资股票是种常见的理财方式&#xff0c;我国股民越来越多&#xff0c;实时查询股票的需求也越来越大。今天&#xff0c;我们通过一个简单的股票查询客户端来认识一种简单的设计模式&#xff1a;模板模式。根据股票代码来查询股价分为如下几个步骤&#xff…

并行编程2——多核体系架构

1.1 多核处理器定义 多内核处理器架构是指&#xff1a;芯片设计工程师在单个处理器中集成两个或多个 “执行内核&#xff08;即计算引擎&#xff09;”。多内核处理器可直接插入到单一处理器基座中。但是&#xff0c;操作系统会把它的每个执行内核作为独立的逻辑处理器&#x…

[Node.js]get/post请求

摘要 在很多情况下&#xff0c;我们的web服务器都需要接受客户端浏览器传递的参数或者数据。最常见的是get和post请求。 获取get请求的内容 get请求传递的参数在url中&#xff0c;参数部分在?后面。因此可以手动解析后面的内容作为get请求的参数。node.js中url模块中的parse函…

MyEclipse10 Tomcat7 JDK1.7 配置

第一步.MyEclipse10 Tomcat7 JDK1.7下载 MyEclipse10http://downloads.myeclipseide.com/downloads/products/eworkbench/indigo/installers/myeclipse-10.0-offline-installer-windows.exe Tomcat http://tomcat.apache.org/ Java SE Development Kit 7 WINDOWS版 http://www…

跳過 Windows RT的UI

RT启动进入常规桌面 微软Surface RT发布的时间已经不短了&#xff0c;相信很多朋友都已经熟悉了这个全新的平板&#xff0c;并且已经上手。Surface RT开机默认进入的界面为Windows UI&#xff0c;这对于经常使用App的朋友来说并没有什么&#xff0c;但是对于那些经常使用Office…

Android知识点剖析系列:深入了解layout_weight属性

前言 Android中layout_weight这个属性对于经常捣鼓UI的我们来说&#xff0c;肯定不会陌生。但是我们在真正使用这个属性时&#xff0c;经常会出现一些莫名奇妙的布局效果&#xff1b;如果仅仅知其然而不知其所以然&#xff0c;一些意外的布局效果一定让我们颇为头疼。在本文中&…

oracle诊断,Oracle 诊断事件列表

Oracle 诊断事件列表(2013-03-26 18:05:26)标签&#xff1a;oracle诊断事件itORA-10000: controlfile debug event, name control_fileORA-10001: controlfile crash event1ORA-10002: controlfile crash event2ORA-10003: controlfile crash event3ORA-10004: controlfile cra…

Qt 独立运行时伴随CMD命令窗口

用Qt写了一个小软件&#xff0c;在把程序release后&#xff0c;打包分装后&#xff0c;发现程序运行的时候会伴随cmd命令窗口&#xff0c;可把我愁怀了 不过功夫不负有心人&#xff0c;在老师和我网友的帮助下&#xff0c;终于搞完了 CONFIG&#xff1a;指定工程配置和编译参数…