day03-20200715
 
p15.docker容器命令(下)
 
以守护进程的形式启动
【docker run -d 容器名】后台运行
启动了后又关闭了,与前台没有交互,立刻就kill了。前台进程的方式运行
 
【docker logs -f -t --tail 数字 容器id】查看日志容器
-t:加入时间戳
-f:跟随最新的日志打印
--tail:数字 显示最后多少条
 
【docker run -d centos /bin/sh -c "while true;do echo hello fengyarong;sleep 2;done"】
后台运行一个容器,并让他持续返回shell脚本输出,保证后台进程不会自杀。
 
【docker logs -f -t --tail 10 容器id】
查看具体的日志输出,实时监控
 
【docker top 容器id】查看容器内的进程
 
容器就是一个简易版的Linux环境,所以可以执行linux的命令。
 
【docker inspect 容器id】查看容器内的详细信息
 
docker镜像是一层套一层的。
 
【docker attach 容器id】进入正在运行的容器,进行交互的界面。进去以后才可以操作。
【docker exec 容器id 执行命令】不进入正在运行的容器,但可以对容器进行操作,直接输出你想要的结果。
【docker exec -it 容器id 执行命令】与【docker attach 容器id】功能相同。
 
相对于比attach的功能更加的强大。
 
【docker cp 容器id:路径   宿主机的路径】容器内的数据拷贝到宿主机上面来。
【docker cp 容器id:/tmp /home/】
 
p16.docker镜像原理
 
镜像就是轻量级、可执行的独立软件包,用来打包软件运行环境和运行配置而开发的软件。
 
镜像就是联合文件系统(unionfs),分层、高性能的文件系统。它支持对文件系统的修改作为一次提交来一层层叠加。镜像可以通过分层来进行继承,基于镜像。
 
镜像的最低层 bootfs文件系统(内核),rootfs.
 
为什么tomcat镜像那么大?
tomcat运行起来需要什么?
centos系统、jdk8、tomcat。
表面看tomcat不大,是因为包含了centos、jdk8及自身。所以才可以直接运行。
 
为什么docker采用分层,共享资源。大家共用一份base镜像。
镜像的特点是只读,最外面的是容器层,内部才是镜像层。
 
p17.docker镜像commit
                                                                    
【docker commit -m= 描述信息 -a= 作者 镜像id 命名位置】提交容器使其成为副本,自定义镜像。
【docker run -p docker访问的对外暴漏的端口:内部的实体端口号  命名空间/镜像标签:镜像标签】交互式容器。
-p:指定端口
-P:随机生成端口
-d:后台启动
 
在运行tomcat的时候发现外部不可以访问(报HTTP Status 404 – 未找到),进到容器内部发现里面有两个webapps,一个是weapps文件夹里面为空,还有一个是webapps.disk里面才是tomcat的真实内容。
可以把webapps.disk内部的文件拷贝到webapps下面。然后将这个新的镜像提交到本地镜像仓库。
 
【docker commit -m "mytomcat" -a "fyr" f7ad369c9617 mytomcat:8.5.51】
 
启动运行tomcat就可以访问了
【docker run -p 8888:8080 mytomcat:8.5.51】

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

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

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

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

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

  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. 《Python测试开发技术栈—巴哥职场进化记》—软件测试工程师“兵器库”

    上文<Python测试开发技术栈-巴哥职场进化记>-初来乍到,请多关照 我们介绍了巴哥入职后见到了自己的导师华哥,第一次参加团队站会,认识了团队中的开发小哥哥和产品小姐姐以及吃到了公司的加 ...

  2. Spring IOC 原理深层解析

    1 Spring IOC概念认识 1.1 区别IOC与DI 首先我们要知道IOC(Inverse of Control:控制反转)是一种设计思想,就是 将原本在程序中手动创建对象的控制权,交由Spri ...

  3. 2020-05-24:ZK分布式锁有几种实现方式?各自的优缺点是什么?

    福哥答案2020-05-24: Zk分布式锁有两种实现方式一种比较简单,应对并发量不是很大的情况.获得锁:创建一个临时节点,比如/lock,如果成功获得锁,如果失败没获得锁,返回false释放锁:删除 ...

  4. C#LeetCode刷题之#31-下一个排列(Next Permutation)

    目录 问题 示例 分析 问题 该文章已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/4965 访问. 实现获取下一个排列的函数,算法需要将 ...

  5. C#LeetCode刷题-广度优先搜索

    广度优先搜索篇 # 题名 刷题 通过率 难度 101 对称二叉树   42.1% 简单 102 二叉树的层次遍历   49.7% 中等 103 二叉树的锯齿形层次遍历   43.0% 中等 107 二 ...

  6. three.js 制作机房(上)

    three.js使用的人太少了,一个博文就几百个人看,之前发js基础哪怕是d3都会有几千的阅读量,看看以后考虑说一说d3了,哈哈.吐槽完毕回归正题.前几天郭先生看到网上有人开发了3D机房,正愁博客没什 ...

  7. 从udaf谈flink的state

    1.前言 本文主要基于实践过程中遇到的一系列问题,来详细说明Flink的状态后端是什么样的执行机制,以理解自定义函数应该怎么写比较合理,避免踩坑. 内容是基于Flink SQL的使用,主要说明自定义聚 ...

  8. 设计模式:原型模式介绍 && 原型模式的深拷贝问题

    0.背景 克隆羊问题:有一个羊,是一个类,有对应的属性,要求创建完全一样的10只羊出来. 那么实现起来很简单,我们先写出羊的类: public class Sheep { private String ...

  9. javascript 数组的组合

    javascript 数组的组合 一.前言 二.数组的组合 concat()方法 push(...items) 其他方法 三.结束语 一.前言 今天在开发项目过程中,遇到了一个需求,先请求了30个数据 ...

  10. TCL(事务控制语言)

    #TCL/*Transaction Control Language 事务控制语言 事务:一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么全部不执行. 案例:转账 张三丰 1000 ...