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. JS 下拉菜单案例

    css代码 .nav { width: 300px; height: 400px; list-style: none; padding:; margin: 0 auto; } .nav>li { ...

  2. js 排他思想案例

    <!-- 排他思想 --> <button>按钮1</button> <button>按钮2</button> <button> ...

  3. puppet单机模型

    puppet配置 命令 facter -p: 显示所有的变量 puppet apply [-v] [--noop] [-e 'puppet expression: 一般为include httpd等' ...

  4. SpringCloud Sidecar 整合.Net WebApi

    在整合.Net的过程中遇到不少问题,一般网上的例子只是调用一个简单的NodeJS示例,并未有详细的介绍及采坑过程. 首先,我的项目结构是:Vue前端 + SpringCloud后端 + .Net的We ...

  5. JS学习第八天

    DOM访问列表框.下拉菜单的常用属性: form返回列表框.下拉菜单所在的表单对象; length返回列表框.下拉菜单的选项个数; options返回列表框.下拉菜单里所有选项组成的数组; defau ...

  6. 机器学习:支持向量机(SVM)

    SVM,称为支持向量机,曾经一度是应用最广泛的模型,它有很好的数学基础和理论基础,但是它的数学基础却比以前讲过的那些学习模型复杂很多,我一直认为它是最难推导,比神经网络的BP算法还要难懂,要想完全懂这 ...

  7. Android 禁止ViewPager左右滑动的功能实现

    来来来,各位看官~ Look here!!! Android    禁止ViewPager左右滑动的功能实现!! I think it`s so easy,无需重写ViewPager!!! JUST ...

  8. 《Java从入门到失业》第二章:Java环境(四):IDE集成环境

    2.4IDE集成环境 在掌握了编写.编译和运行Java程序的基本步骤以后,你肯定就在想,这太麻烦了,有没有更好的工具?当然有了,那就是IDE.IDE就是专业的集成开发环境(Integrated Dev ...

  9. PHP基础之常量与变量

    1.变量:用来存储信息的空间大小 $var 2.常量:定义之后不可以更改,标识符,并且给其赋值,常量是全局,在整个页面中均可使用,常量一般有英文字母.下划线.数字组成,开头不能是数字和$ 使用defi ...

  10. python中a, b = a, a + b这条语句是如何执行的?

    a,b=b,a+b,这条语句在"理解"上还是与C语言有些差别的.在Python中,可以做下面的方式理解:首先,把等号右边的算式分别算完再说,然后按照一一对应的关系把值赋给等号左边的 ...