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. 《RabbitMQ》什么是死信队列

    一 什么是死信队列 当一条消息在队列中出现以下三种情况的时候,该消息就会变成一条死信. 消息被拒绝(basic.reject / basic.nack),并且requeue = false 消息TTL ...

  2. 洛谷 P4198 楼房重建

    思路 此题可转化为以下模型 给定序列\(a[1...n]\),支持单点修改,每次求区间单调栈大小 \(n,Q\le 10^5\) 区间单调栈是什么呢?对于一个区间,建立一个栈,首先将第一个元素入栈,从 ...

  3. 禁用 Spring Boot 中引入安全组件 spring-boot-starter-security 的方法

    1.当我们通过 maven 或 gradle 引入了 Spring boot 的安全组件 spring-boot-starter-security,Spring boot 默认开启安全组件,这样我们就 ...

  4. 简直骚操作,ThreadLocal还能当缓存用

    背景说明 有朋友问我一个关于接口优化的问题,他的优化点很清晰,由于接口中调用了内部很多的 service 去组成了一个完成的业务功能.每个 service 中的逻辑都是独立的,这样就导致了很多查询是重 ...

  5. DB2 SQL Error: SQLCODE=-1585, SQLSTATE=54048

    DB2 执行SQL报错: DB2 SQL Error: SQLCODE=-1585, SQLSTATE=54048 你建的db2数据库没有建足够大的临时表空间,新建一个足够大的临时表空间 1.创建数据 ...

  6. 用Unity3D实现太阳系仿真

    用Unity3D模拟太阳系仿真 模拟要求 写一个程序,实现一个完整的太阳系, 其他星球围绕太阳的转速必须不一样,且不在一个法平面上. 操作步骤 1.创建如下结构 sun 里包括8大行星, 并且设置好距 ...

  7. Escalate_my_privilege 靶机

    1:扫描主机ip 2:扫描端口发现 22 80 111 3:目录扫描,发现一些平常的页面 4:进入robots.txt发现一个类型命令行的界面,查看是个低权限,但是在home目录下的armour发现密 ...

  8. 【Codeforces】CF Round #592 (Div. 2) - 题解

    Problem - A Tomorrow is a difficult day for Polycarp: he has to attend \(a\) lectures and \(b\) prac ...

  9. 利用 Github Actions 自动更新 docfx 文档

    利用 Github Actions 自动更新 docfx 文档 Intro docfx 是微软出品一个 .NET API 文档框架,有一个理念是代码即文档,会根据项目代码自动生成 API 文档,即使没 ...

  10. 阿里天池 NLP 入门赛 TextCNN 方案代码详细注释和流程讲解

    thumbnail: https://image.zhangxiann.com/jung-ho-park-HbnqEhMBpPM-unsplash.jpg toc: true date: 2020/8 ...