day07-20200722
 
p27.dockerfile案例编写-3
 
第一步:编写父dockerfile
DockerFile_20200722_2
FROM centos
RUN yum -y install curl
ENTRYPOINT [ "curl","-s","http://www.baidu.com" ]
ONBUILD RUN echo "继承父镜像 onbuild 886"
 
第二步:构建镜像
【docker build -f DockerFile_20200722_2 -t fyr/centos:20200722.2 .】
 
 
第三步:编写子dockerfile
DockerFile_20200722_3
FROM fyr/centos:20200722.2
RUN yum -y install curl
CMD [ "curl","-s","http://www.baidu.com" ]
 
第四步:构建镜像
【docker build -f DockerFile_20200722_3 -t fyr/centos:20200722.3 .】
父镜像在被子继承后父镜像的onbuild被触发
 
Sending build context to Docker daemon  7.168kB
Step 1/3 : FROM fyr/centos:20200722.2
# Executing 1 build trigger
---> Running in 592e0ff1548f
继承父镜像 onbuild 886
Removing intermediate container 592e0ff1548f
---> 8916ecb06c90
 
 
p28.dockerfile案例编写-4
 
自定义的tomcat~一个案例把所有的保留字指令写出来
 
准备工作:
1.新建文件夹:/tmp/mydockerfile/tomcat
2.新建文件:/tmp/mydockerfile/tomcat:cp.txt,用于演示拷贝信息,add有解压缩。
3.上传tomcat和jdk:/tmp/mydockerfile/tomcat
 
第一步:编写dockerfile
DockerFile
#导入基础镜像
FROM centos
#设置作者邮箱
MAINTAINER fengyarong
#拷贝宿主机文件到
COPY cp.txt /usr/local/cincontainer.txt
#ADD 解压缩
ADD jdk-8u201-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-7.0.93.tar.gz /usr/local/
#安装vim
RUN yum -y install vim
#修改登陆后的工作目录
ENV MYPATH /usr/local
WORKDIR $MYPATH
#设置配置环境变量
ENV JAVA_HOME /usr/local/jdk1.8.0_201
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-7.0.93
ENV CATALINA_BASE /usr/local/apache-tomcat-7.0.93
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
#端口
EXPOSE 8080
#启动tomcat的三种方法
# ENTRYPOINT [ "/usr/local/apache-tomcat-7.0.93/bin/startup.sh" ]
# CMD [ "/usr/local/apache-tomcat-7.0.93/bin/startup.sh","run" ]
CMD /usr/local/apache-tomcat-7.0.93/bin/startup.sh && tail -F /usr/local/apache-tomcat-7.0.93/bin/logs/catalina.out
第二步:构建镜像
【docker build -f DockerFile -t fyr/tomcat7-jdk8 .】
不写-f会默认在当前路径下Dockerfile文件,注意是Dockerfile,f不是大写的噢!
最后面的【.】一定不可以省略
构建成功会出现以下信息。
 
第三步:运行容器
【docker run -d -p 8888:8080 --name fyr-tomcat -v /tmp/mydockerfile/tomcat/test:/usr/local/apache-tomcat-7.0.93/webapps/test -v /tmp/mydockerfile/tomcat/logs:/usr/local/apache-tomcat-7.0.93/logs --privileged=true fyr/tomcat7-jdk8 】
-d后台运行,--name自己命名
-v添加容器卷
--privileged=true有问题才加
【dockers ps】
 
第四步:验证
 
 
 
p29.dockerfile案例编写-5
 
在上面构建的镜像基础上
 
启动自己的war包项目,拿Jenkins举例。
 
在/tmp/mydockerfile/tomcat/test/上传jenkins.war
 
然后运行:
【docker run -d -p 1111:8080 --name fyr-tomcat-Jenkins -v /tmp/mydockerfile/tomcat/test:/usr/local/apache-tomcat-7.0.93/webapps -v /tmp/mydockerfile/tomcat/logs:/usr/local/apache-tomcat-7.0.93/logs --privileged=true fyr/tomcat7-jdk8 】
 
【docker inspect】是个好东西,关键时刻帮你忙!!!
 
映射的日志可以看到
 
验证,启动成功
 
 
p30.dockerfile总结
 
保留字指令-dockerfile-docker build-docker images-docker run - (docker build)
 
p31.docker 安装mysql
搜索-拉取-查看-运行-检查
 
【 docker search mysql】
【docker pull mysql:5.6】
【docker images】
【docker run -p 3306:3306 --name fyr_mysql -v /tmp/mydockerfile/mysql/conf:/etc/mysql/conf.d -v /tmp/mydockerfile/mysql/logs:/var/log/mysql  -v /tmp/mydockerfile/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1 -d mysql:5.6】
 
-e:指定密码
【docker ps -q】
【docker exec -it 09130f7d4009 /bin/bash 】
【mysql -uroot -p】
【show databases】
【create database fyr】
 
外部连接
 
 
成功!
 
 
 
 
 
 
 
 
 
 
 
 
 

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

  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-【day06】

    day06-20200720 p24.dockerfile案例编写-1   1.创建好容器时,进去容器的时候,修改所在的当前目录. 2.新添加命令.支持vim.ifconfig 备注:原来的镜像容器默 ...

  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. C#LeetCode刷题之#54-螺旋矩阵(Spiral Matrix)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3672 访问. 给定一个包含 m x n 个元素的矩阵(m 行, ...

  2. C#LeetCode刷题之#459-重复的子字符串(Repeated Substring Pattern)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3945 访问. 给定一个非空的字符串,判断它是否可以由它的一个子串 ...

  3. Newbe.Claptrap 框架如何实现 Claptrap 的多样性?

    Newbe.Claptrap 框架如何实现 Claptrap 的多样性?最近整理了一下项目的术语表.今天就谈谈什么是 Claptrap Design 和 Claptrap Factory. 特别感谢  ...

  4. 实现1.双击自动关联文件类型打开 2.PC所有驱动器 3.小型资源管理器

    感谢各位这里实现:双击自动关联文件类型打开 2.PC所有驱动器 3.小型资源管理器!! 首先主页面: 2.运用DriveInfo驱动器的信息:获得整个系统磁盘驱动!!,运用frorach循环遍历到Tr ...

  5. 【算法•日更•第三十九期】迭代加深搜索:洛谷SP7579 YOKOF - Power Calculus 题解

    废话不多说,直接上题: SP7579 YOKOF - Power Calculus 题意翻译 (略过没有营养的题干) 题目大意: 给出正整数n,若只能使用乘法或除法,输出使x经过运算(自己乘或除自己, ...

  6. 如何在 asp.net core 的中间件中返回具体的页面

    前言 在 asp.net core 中,存在着中间件这一概念,在中间件中,我们可以比过滤器更早的介入到 http 请求管道,从而实现对每一次的 http 请求.响应做切面处理,从而实现一些特殊的功能 ...

  7. python爬虫抖音 个人资料 仅供学习参考 切勿用于商业

    本文仅供学习参考 切勿用于商业 本次爬取使用fiddler+模拟器(下载抖音APP)+pycharm 1. 下载最新版本的fiddler(自行百度下载),以及相关配置 1.1.依次点击,菜单栏-Too ...

  8. Android 使用AS编译出错:Error: Duplicate resources

    原因在于drawable目录下有重复的文件名!!! 修改其中的一个文件名或者删除其中一张图(或者xml文件)就可以啦~

  9. tar.gz文件的压缩与解压

    1 解压".xz" xz -d your_file_name.tar.xz 注:运行上述命令后your_file_name.tar.xz会被删除 2 解包".tar&qu ...

  10. IDEA编写Scala代码时自动显示变量类型

    设置方法如下:settins -->Editor--> Code Style --> scala --Type Annotations  勾选框选部分 测试效果