day06-20200720
p24.dockerfile案例编写-1
 
1.创建好容器时,进去容器的时候,修改所在的当前目录。
2.新添加命令。支持vim、ifconfig
备注:原来的镜像容器默认是不满足上面的条件的。
第一步:DockerFile编写
 
DockerFile_20200720_1
FROM centos
 
MAINTAINER fengyarong
 
ENV mypath /tmp
 
WORKDIR $mypath
 
RUN yum -y install vim
RUN yum -y install net-tools
 
EXPOSE 80
 
CMD echo $mypath
CMD echo "success -----ok"
CMD /bin/bash
 
第二步:构建镜像
【docker build -f /tmp/mydockerfile/DockerFile_20200720_1 -t fyr/centos:20200720.1 .】
【.】表示当前目录
 
第三步:运行容器
【docker run -it fyr/centos:20200720.1】
 
附加:【docker history 镜像id】可以查看本次镜像的构建过程。
 
p25.dockerfile案例编写-2
 
【CMD】和【ENTRYPOINT】如何区别?
 
通过镜像部署tomcat之所以运行就启动是因为,文件dockerfile里面最后有一句【CMD ["catalina.sh","run"]】
 
假设我们现在【docker run -it -p 8888:8080 tomcat ls -l】tomcat还会自动运行吗?
不会,容器启动后运行了ls -l就停止了。tomcat的目录。
 
第一步:编写dockerfile
DockerFile_20200720_2
FROM centos
RUN yum -y install curl
CMD [ "curl","-s","http://ip.cn" ]
 
第二步:构建镜像
【docker build -f DockerFile_20200720_2 -t fyr/centos:20200720.2 .】
 
第三步:运行容器
【docker run -it fyr/centos:20200720.2】
显示ip
【docker run -it fyr/centos:20200720.2 -i】
会报错,找不到-i这个命令
所以是不可以直接运行的,而是覆盖CMD [ "curl","-s","http://ip.cn" ]命令。
 
第四步:重新编写dockersfile
DockerFile_20200720_3
FROM centos
RUN yum -y install curl
ENTRYPOINT [ "curl","-s","http://ip.cn" ]
 
第五步:构建镜像
【docker build -f DockerFile_20200720_3 -t fyr/centos:20200720.3 .】
 
第六步:运行容器
【docker run -it fyr/centos:20200720.3】
显示ip
【docker run -it fyr/centos:20200720.3 -i】
成功解析,并显示ip
证明命令都执行,而不是覆盖。
 
 
 
 
 
 
 

跟着尚硅谷系统学习Docker-【day06】的更多相关文章

  1. 跟着尚硅谷系统学习Docker-【day01】

    day01-20200710   p1.基础知识   鲸鱼背上有一些集装箱   学习docker得基础知识   1.强制:熟悉Linux命令和相关背景知识 2.建议有maven和git的相关知识   ...

  2. 跟着尚硅谷系统学习Docker-【day08】

    day08-20200723   p32.docker 安装redis   [ docker pull redis] [docker run -p 6397:6397 -v /tmp/mydocker ...

  3. 跟着尚硅谷系统学习Docker-【day03】

    day03-20200715   p15.docker容器命令(下)   以守护进程的形式启动 [docker run -d 容器名]后台运行 启动了后又关闭了,与前台没有交互,立刻就kill了.前台 ...

  4. 跟着尚硅谷系统学习Docker-【day02】

    day02-20200714   p9.docker阿里云配置   helloword   拉取镜像-运行-   拉取镜像如果从国外网站拉取辉比较慢,所以需要配置阿里云或者网易云得镜像仓库.   首先 ...

  5. 跟着尚硅谷系统学习Docker-【day07】

    day07-20200722   p27.dockerfile案例编写-3   第一步:编写父dockerfile DockerFile_20200722_2 FROM centos RUN yum ...

  6. 跟着尚硅谷系统学习Docker-【day05】

    day05-20200717   p21.docker容器数据卷容器   就是活动硬盘上面挂载硬盘进行数据的传递.     [docker run -it --name dc01 fyr/centos ...

  7. 跟着尚硅谷系统学习Docker-【day04】

    day04-20200716   p18.docker容器数据卷   docker容器中的数据,做持久化. 容器关闭以后容器内的数据就没有了. 保存到数据库或者服务器宿主机里面.   作用:容器间可以 ...

  8. 尚硅谷Docker---1、docker杂记

    尚硅谷Docker---1.docker杂记 一.总结 一句话总结: ~ php用的homestead就相当于docker,javaee一般都是用docker,php也可以用docker ~ dock ...

  9. 尚硅谷Docker---1-5、docker简介

    尚硅谷Docker---1-5.docker简介 一.总结 一句话总结: docker是环境打包:有点像windows镜像 docker的实质:缩小版.精细版.高度浓缩版的一个小型的linux系统 1 ...

随机推荐

  1. 记一次LayUI中Table动态添加列数据

    这次在开发中遇到,有列数不固定的情况.废话不多说,先上图,在上代码. 下面上JS代码 function SearchData() { var dYear = $("#DYear") ...

  2. ECMAScript6新增数据类型symbol数据类型

    25.Symbol目的:为了解决对象之间属性名冲突的问题,Symbol它是引用数据类型. Symbol( ),它代表着一个独一无二的值 [name]: '小红',//加中括号代表默认创建了一个Symb ...

  3. 代码生成器插件与Creator预制体文件解析

    前言 之前写过一篇自动生成脚本的工具,但是我给它起名叫半自动代码生成器.之所以称之为半自动,因为我觉得全自动代码生成器应该做到两点:代码生成+自动绑定.之前的工具只做了代码生成,并没有做自动绑定,所以 ...

  4. Java 多态 接口继承等学习笔记

    Super关键字 1.子类可以调用父类声明的构造方法 : 语法:在子类的构造方法中使用super关键字  super(参数列表) 2.操作被隐藏的成员变量(子类的成员变量和父类的成员变量重名的说法)和 ...

  5. 07 CentOS简单命令与XShell简单使用

    关机 poweroff 重启 init 6 查看ip地址 ifconfig 查看当前目录下的文件与目录 ls ll 判断命令是内部还是外部的类型 type ifconfig 通过file /sbin/ ...

  6. 2020-06-15:Redis分布式锁怎么解锁?

    福哥答案2020-06-15: 答案来自群成员:1.setnx:del2.set:lua+del3.redisson:@Overridepublic void unlock(String lockKe ...

  7. Quartz.Net的基础使用方法,多任务执行继续扩展

    前一篇随笔讲了Quartz多任务的简单实现 Quartz.Net的基础使用方法,多任务执行 这一篇,来简单对前一篇进行一下简单的扩展 看了前一篇的代码会发现,每次新增一个任务还要去GetJobs方法里 ...

  8. LOJ10048. 「一本通 2.2 练习 4」Censoring

    作者是个* 题目描述 原题来自:USACO 2015 Feb. Silver 给出两个字符串\(S\)和\(T\),每次从前往后找到\(S\)的一个子串\(T\)并将其删除,空缺位依次向前补齐,重复上 ...

  9. JVM的方法执行引擎-模板表

    Java的模板解析执行需要模板表与转发表的支持,而这2个表中的数据在HotSpot虚拟机启动时就会初始化.这一篇首先介绍模板表. 在启动虚拟机阶段会调用init_globals()方法初始化全局模块, ...

  10. java十进制二进制互转

    1. 十进制转二进制 原理:给定的数循环除以2,直到商为0或者1为止.将每一步除的结果的余数记录下来,然后反过来就得到相应的二进制了. 比如8转二进制,第一次除以2等于4(余数0),第二次除以2等于2 ...