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. Netty(一):的入门使用。

    Netty的入门基本使用流程代码,不做具体分析.使用版本为Netty 4.x版本. 服务端调用示例: 绑定端口号为8080端口 package com.cllover; import com.sun. ...

  2. vue 项目运行报错

    'vue-cli-service' 不是内部或外部命令,也不是可运行的程序 或批处理文件. 运行Vue项目文件的时候报如下错误 需要先用淘宝镜像来运行:cnpm install 然后运行成功后 就可以 ...

  3. 洛谷P1048 采药 二维dp化一维

    题目描述 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师.为此,他想拜附近最有威望的医师为师.医师为了判断他的资质,给他出了一个难题.医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个 ...

  4. Butterfly侧边栏引入一言

    此教程涉及修改源码 背景 在修改每页显示7篇文章后,出现了这种情况. 这是完美主义(强迫症)的我所不能忍受的,有什么可以占据这里的呢?{% btn 'https://hitokoto.cn/',一言, ...

  5. Vulnhub篇Photographerr

    0x00 靶机信息 靶机:Photographerr:1 难度:中 下载:https://www.vulnhub.com/entry/photographer-1,519/ 0x01 信息收集 靶场网 ...

  6. 第一次使用Git Bash Here 将本地代码上传到码云

    当我们安装成功git工具时候,初次使用Git时,需要Git进行配置. 1.点击桌面上的这个图标,打开Git Bash:如图所示 2.配置自己的用户名和邮箱 git config --global us ...

  7. DFS【搜索1】

    DFS模板 void dfs(int depth)//depth表示当前的层数(或深度) { if(depth>n)//到达叶子节点,该路已走到尽头 return; for(int i=;i&l ...

  8. python基础 Day5

    python Day5 字典 其他数据类型的缺点 列表可以存储大量的数据,但是关联性不强. 列表的查询速度比较慢 其容器的数据类型为dict 其数据类型的分类 可变(不可哈希)的数据类型:list d ...

  9. Python3技巧:动态变量名

    Firstly 各位应该做过服务器运维吧,像这样: 那么,在服务器运维的程序中,最好的访问服务器的方式是:运维库名.服务器名 由于服务器名是动态的,所以变量名也是动态的.今天我们就来讲讲Python3 ...

  10. 封装Vue Element的form表单组件

    前两天封装了一个基于vue和Element的table表格组件,阅读的人还是很多的,看来大家都是很认同组件化.高复用这种开发模式的,毕竟开发效率高,代码优雅,逼格高嘛.虽然这两天我的心情很糟糕,就像& ...