项目——基于httpd镜像演示Dockerfile所有的指令
基于httpd镜像演示Dockerfile所有的指令:
第一步:创建Dockerfile工作目录
[root@localhost harbor]# mkdir /test
[root@localhost harbor]# cd /test/
[root@localhost test]# echo 11111 > 1.txt
[root@localhost test]# ls
1.txt
[root@localhost test]# vim Dockerfile
FROM httpd:latest
LABEL author=wuxun
ENV dir=/usr/local/apache2/htdocs
WORKDIR $dir
COPY 1.txt ./
RUN touch {1..3}.txt
ADD https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/adwaita-qt-common-1.0-1.el7.x86_64.rpm ./
EXPOSE 80 3306
VOLUME $dir
CMD ["httpd-foreground"]
第二步:基于dockerfile创建镜像
[root@localhost test]# docker build -t httpd:test1
"docker build" requires exactly 1 argument.
See 'docker build --help'.
Usage: docker build [OPTIONS] PATH | URL | -
Build an image from a Dockerfile
[root@localhost test]# docker build -t httpd:test1 ./
Sending build context to Docker daemon 3.072kB
Step 1/10 : FROM httpd:latest
---> fb2f3851a971
...
Successfully built 8b0d23d4e733
Successfully tagged httpd:test1
[root@localhost test]# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
httpd test1 8b0d23d4e733 3 minutes ago 178MB
第三步:基于新创建的镜像启动容器
[root@localhost test]# docker run -d httpd:test1
5b6975fd8ad966bd8359ebe0538bd22cb0c9f43d2d6d98c64e806bef93f32e88
[root@localhost test]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5b6975fd8ad9 httpd:test1 "httpd-foreground" 18 seconds ago Up 17 seconds 80/tcp, 3306/tcp jolly_gagarin
第四步:验证
[root@localhost test]# docker exec -it 5b6975fd8ad9 bash
root@5b6975fd8ad9:/usr/local/apache2/htdocs# ls
1.txt adwaita-qt-common-1.0-1.el7.x86_64.rpm index.html {1..3}.txt
root@5b6975fd8ad9:/usr/local/apache2/htdocs# exit
exit
[root@localhost test]# docker image ls |grep httpd
httpd test1 8b0d23d4e733 31 minutes ago 178MB
192.168.59.200/test/httpd v1 fb2f3851a971 18 months ago 178MB
httpd latest fb2f3851a971 18 months ago 178MB
[root@localhost test]# docker ps | grep httpd
5b6975fd8ad9 httpd:test1 "httpd-foreground" 26 minutes ago Up 26 minutes 80/tcp, 3306/tcp jolly_gagarin

项目——基于httpd镜像演示Dockerfile所有的指令的更多相关文章
- 一个带bash,带glibc,中国时区,非root用户可运行crond命令的基于alpine镜像的Dockerfile
这个镜像现在说起来简单, 带bash(增加执行脚本的兼容性,带GLIBC,中国时区,非root用户可运行crond命令-安全) 但让我开始陷入时,真的让我有段时间有点爆了. 比如,将filebeat文 ...
- Docker笔记--镜像&基于GO项目创建Docker镜像
Docker笔记--镜像&基于GO项目创建Docker镜像 核心概念 Doker镜像--包含一个基本的操作系统运行环境和应用程序,镜像是创建Docker容器的基础. Docker容器--如果把 ...
- Docker端口映射及创建镜像演示(二)--技术流ken
前言 在上一篇博客<Docker介绍及常用操作演示--技术流ken>中,已经详细介绍了docker相关内容以及有关镜像和容器的使用命令演示. 现在我们已经可以自己下载镜像,以及创建容器了. ...
- Docker端口映射及创建镜像演示(二)
Docker暴露容器方法 第一种:将容器中的一个端口映射成宿主机中的一个随机端口 第二种:将容器中的一个端口映射成宿主机中的一个端口 第三种:将容器中的一个端口映射成宿主机中的一个特定网卡上的随机端口 ...
- 将php项目打包docker镜像
简介:有时候我们需要将php的项目打包成docker镜像,这里介绍下 思路:我们php和apache结合一个镜像实现php项目的访问,mysql是一个单独的镜像 步骤: 1.首先我们在本地测试好自己的 ...
- Python环境搭建、python项目以docker镜像方式部署到Linux
Python环境搭建.python项目以docker镜像方式部署到Linux 本文的项目是用Python写的,记录了生成docker镜像,然后整个项目在Linux跑起来的过程: 原文链接:https: ...
- Dockerfile创建自定义Docker镜像以及CMD与ENTRYPOINT指令的比较
1.概述 创建Docker镜像的方式有三种 docker commit命令:由容器生成镜像: Dockerfile文件+docker build命令: 从本地文件系统导入:OpenVZ的模板. 关于这 ...
- DoNet开源项目-基于jQuery EasyUI的后台管理系统
博主在业余时间开发了一个简单的后台管理系统,其中用到了 jQuery EasyUI 框架,上次分享过系统布局,参考文章:jQuery EasyUI 后台管理系统布局分享,目前已完成系统的整体框架的搭建 ...
- DoNet开源项目-基于Amaze UI的点餐系统
帮朋友做的点餐系统,主要是为了让顾客在餐桌上,使用微信扫描二维码,就可以直接点菜,吃完使用微信付款. 系统演示地址,账户名和密码均为:admin.(请不要删除admin用户) GitHub Clone ...
随机推荐
- Java线程状态和关闭线程的正确姿势
1.线程状态及切换 Java中的线程有六种状态,使用线程Thread内的枚举类来实现,如下,我对每个状态都进行了一定的解释. public enum State { /** 表示一个线程还没启用(即未 ...
- 树莓派(4B)Linux + .Net Core嵌入式-HelloWorld(二)
一.新建.Net Core项目 新建.Net Core3.0的控制台应用,代码如下 namespace Demo { class Program { static void Main(string[] ...
- 05jmeter-responses中有多组json数据,提取同一条json数据的两个字段
某接口返回结果如上图,取id和groupNo 1.读取确定的某条json数据:如取第一条,一个JSON Extractor即可实现 2.随机读取某条json数据: 需要两个JSON Extractor ...
- if-elif-else分支判断语句(附加continue和break)---举例说明
一.分支循环语句: a=input("请输入一个五位数字") if(len(a)!=5): print("输入的数字不合格"); elif(a[0::]==a[ ...
- 记录手动签名APK的过程
记录手动签名APK的过程 前两天更新了华为平台上的APK,被驳回,原因是新APK签名和老的APK不一致,老用户安装会失败,用命令行安装会报如下的错误: harlanc@harlancdeMacBook ...
- [洛谷P3613]睡觉困难综合症
写码30min,调码3h的题.. 好在最后查出来了 , , n, x, y, z); 改成了 , , n, mark[x], y, z); 然后$40\rightarrow 100$ #include ...
- Qt乱码的问题
1.在启动应用程序前加入以下代码: //配置字符编码环境,让应用程序支持中文. QTextCodec *codec = QTextCodec::codecForName("System&qu ...
- angular 子路由跳转出现Navigation triggered outside Angular zone, did you forget to call ‘ngZone.run() 的问题修复
angular 路由功能非常强大,同时angular的路由也非常脆弱,非常容易出现错误. 那么在我们遇到异常时,首先要做的是什么? 第一步:检查代码,对比官方文档,发现代码中不一致的地方进行改正. 第 ...
- JS-SDK
1. 签名 看到网上的大部分问题都集中在签名部分,请大家一定请熟读微信JS-SDK说明文档附录5-常见错误及解决方法 部分. 注意 在计算签名的过程中,如果url总是不对请 实验 首页的url或 ...
- django-表单之模型表单渲染(六)
class StudentForms(forms.ModelForm): formats=[ '%Y-%m-%d', '%m/%d/%Y', ] birthday = forms.DateField( ...