`
y806839048
  • 浏览: 1107738 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

docker进阶一些知识

阅读更多

 

容器修改后的改动需要保存:

docker ps -l 获取新改之后的最新的容器id  (正在运行的容器)

docker inspect efe(id) 容器的详细信息

docker commit 698(id) learn/ping  保存对应id的容器

 

docker镜像环境,每修改一次就会有一次容器的版本号更新,然后通过该id进行commiting就保存了新的镜像

 

docker push learn/ping 发布自己运行的镜像到官方注册中

 

 

查看安装包(查看一个软件安装时所有的安装包)

 

yum list installed | grep docker  

 

Docker 镜像就是一个只读的模板。

 

例如:一个镜像可以包含一个完整的 centos操作系统环境,里面仅安装了 Apache 或用户需要的其它应用程序。

 

镜像可以用来创建 Docker 容器。

 

镜像  包含 容器  在镜像中创建多个docker容器(镜像中的每一个容器相当于运行一个应用程序的一个vm)

 

仓库注册 》仓库 》镜像文件|通过tag区分

 

默认从docker官方下载镜像,不需要命名空间

 

 

仓库:集中存放仓库  先要注册,后登录下载(私有仓库)

 

 

docker下载数据库镜像运行后就用了数据库容器,在同一台机器下载其他应用/启动后就又有了一个容器

 

大名:版本别名

link就是容器直接互相通信的 --打通容器间的通信通道

 

指定容器的启动命令,每个Dockerfile只能有一条CMD命令,如果指定多条,只有最后一条会执行。

 

用户启动容器时指定运行命令,会覆盖掉Dockerfile中的CMD命令。

 

用dockerFile创建镜像每运行一个Dockerfile在基础镜像上加一层镜像,(可按层回复,调试)---在from的基础镜像上构建新的docker镜像

一般用这个dockerFile创建镜像的时候就是打包了基础镜像+程序所有需要的中间件容器---即可随时移植部署的成品镜像

   包含基础镜像,requiredment.txt  应用程序

   docker build -t web .  就用文件创建了成品镜像

 

 

 

DockerCompose---dockerFile组合所有需要的容器后这些容器的启动

    一个服务是一个容器

   定义所有需要部署的对象,各个对象之间的关系,执行顺序,文件存储位置,验证成功方式

场景:redis容器,tomcat容器,nginx容器,mysql容器,这4个容器的启动是有顺序性的,docker compose就是为了组合启动的,而不是手动来启动。

docker-compose.yml定义dockerfile中需要启动的容器,他们的端口,启动依赖关系

docker-compose up -d(后台启动)

 

 

docker swarm  集群管理工具

 

为了处理只有一台机器的时候,用docker-machine的时候  init manager的同时也生成了一个worker的token

 

 

创建doker虚拟机方式:  

1,vagrant  创建的虚拟机有docker容器(docker虚拟机)

2,docker-machinal

这两种创建虚拟机的方式都自动带有docker

 

 

 

 

 

 

 

docker  一个个独立的运行环境---在一个大的服务器上

image---相应软件的数据文件---操作系统镜像(基础镜像),apache,应用程序等软件的镜像,这些镜像可以构成新的组合镜像打包,镜像之间可以通信---类

container---操作系统。一个镜像可以有多个操作系统,一个镜像可以启动多个操作系统---类的对象,一个类多个实例对象即多个容器

通过Image创建的

在Image layer之上建立(实例化)一个container layer(可读写)

 

类比面向对象,类和实例,容器就是实例,Image就是类

 

Image负责application的存储和分发(操作系统软件的代码文件)--类,Container(操作系统,软件的实例---可运行)具有实际功能的对象负责运行app

 

向容器中增加文件,解压文件 ADD and COPY

 

ENTRTYPOINT   容器启动时运行的命令

 

CMD   设置容器启动后默认执行的命令和参数

 

Dockerfile   制造镜像的文件(运行一次创建一层镜像)

 

DockerCompose  实例化文件中的所有涉及的镜像生成容器对象并运行的文件(组合镜像???)

 

 

docker build  建立新的镜像(用dockerFile文件)

    将Dockerfile通过的build变成了dockerImage,然后通过run方法,Image转换成了container

 

docker run 实例化运行镜像对象---容器

 

 

docker exec -it c62d9d554853 /bin/bash   进入运行中的容器

 

 

docker container start c62d9d554   启动容器

 

 

分享到:
评论

相关推荐

    Docker进阶与实战 (容器技术系列) mobi+epub+azw3

    本书概述: Docker在国内的发展如火如荼,短短一两年时间里就陆续出现了一批关于Docker的...本书不仅适合一般的Docker用户,也适合 Docker 生态圈中的开发者,希望它可以成为一本 Docker 进阶的图书,帮助读者快速提升。

    云原生Docker和K8S 02-Docker进阶

    云原生Docker和K8S 02-Docker进阶 本资源主要讲解了如何使用Jenkins和Docker进行自动化构建和部署,涵盖了从连接服务器到安装Jenkins和Docker的所有步骤。以下是本资源的知识点总结: 1. 连接服务器:使用ssh命令...

    Docker进阶与实战

    华为技术专家写的Docker,文档清晰明了,知识技能比较靠前

    狂神说各种学习视频配套笔记

    【狂神说各种学习视频配套笔记】是一套全面覆盖了多个IT技术领域的学习资源,旨在帮助初学者和进阶者提升编程技能。这套笔记包含了Java基础、前端开发、数据库管理、Web框架、分布式系统以及开发工具等多个方面,...

    docker和docker compose安装使用、入门进阶案例.doc

    docker 和 docker compose 安装使用、入门进阶案例 从给定的文件信息中,我们可以提炼出以下知识点: 一、docker 和容器化时代 * 容器化时代的到来,云原生技术的兴起,对 Java 开发者的影响 * docker 的兴起和...

    动力节点Docker入门到进阶教程学习笔记分享

    针对Docker的知识体系,无需再查找任何其它资料。真正做到一课在手,无需它求。 1.深度剖析了Windows的Hyper-V虚拟化原理、Docker引擎的现代架构体系、多架构镜像原理。 2.通过实例全面讲解了Dockerfile指令 3.深度...

    【完整版15章】Kubernetes 入门到进阶实战,系统性掌握 K8s 生产实践(2021最新课程)

    【完整版15章】Kubernetes 入门到进阶实战,系统性掌握 K8s 生产实践(2021最新课程),课程从0开始,系统性掌握 K8s 知识体系及落地实践,基础知识+原理解析+实战贯穿,极度友好的 K8s 学习路径,全程项目贯穿,...

    Java 工程师进阶知识完全扫盲

    《Java工程师进阶知识完全扫盲》是一份全面的学习资源,旨在帮助Java开发者深化技能,提升职业素养。这个学习资源的目录广泛而深入,涵盖了Java技术的各个方面,为那些希望在Java开发领域取得突破的工程师提供了宝贵...

    Docker入门与进阶实战(基于Java,通俗易懂,附源码)

    Docker近几年非常火,因为它是容器虚拟化,更能够充分提高硬件资源的使用率。其实利用率高不算什么,它最大的优势是能给让运维人员或者开发人员快速部署和交付资源,大大提高了工作效率。 本课程以通俗易懂的方式...

    nginx 和 docker.rar

    主要事关于nginx基础,配置,反向代理,负载均衡,日志解析等等知识点。docker方面是镜像管理,容器管理,仓库管理,数据管理,网络管理等等方面,以及进阶知识点,dockerfile,以及最后的项目的部署。

    21天Docker学习视频.rar

    │ │ Day 4 容器进阶之kubernetes基础知识介绍_学习材料.pdf │ │ Day 4 容器进阶之kubernetes基础知识介绍_操作指导.pdf │ │ Day4 容器进阶之kubernetes之基础知识介绍.mp4 │ │ Day4 容器进阶之kubernetes...

    互联网 Java 工程师进阶知识完全扫盲:涵盖高并发、分布式、高可用、微服务、海量数据处理等领域知识

    本教程旨在为Java工程师提供全面的进阶知识,帮助他们提升在高并发、分布式、高可用、微服务以及海量数据处理等关键领域的专业技能。 1. **高并发处理**: 高并发是互联网应用的常态,Java工程师需要理解线程池的...

    java工程师进阶学习资料

    通过深入学习并实践这些知识,你可以更好地应对高并发、大数据量和分布式场景下的问题,从而提升自己的专业素养和市场竞争力。同时,持续关注新技术的发展,如Kubernetes、Docker等容器技术,将有助于保持在IT行业的...

    docker学习资料以及基本操作

    资源中还包括了官方文档链接、精选视频课程、实战书籍推荐及活跃社区论坛,确保学习者能获取最新、最权威的知识,并在遇到问题时能够快速获得解决方案。无论是寻求快速入门的新手,还是希望深化理解并提升技能的进阶...

    Java进阶学习资料.zip

    在Java进阶学习中,你需要掌握以下几个关键的知识点: 1. 高级数据结构与算法:理解并能熟练运用ArrayList、LinkedList、HashMap等集合框架,深入研究Set、Queue、Stack等接口及其实现类。同时,学习并应用高级排序...

    用Docker轻松部署Spring应用:容器化实践指南0基础!!易懂!!.html

    每个技术点都配有详细的步骤和源码案例,以帮助初学者逐步掌握相关知识。教程还介绍了在生产环境中部署Spring应用的方法,包括如何使用Docker Hub发布镜像和如何将容器部署到云平台。此外,教程提供了故障排除和最佳...

    重塑java基础高级进阶资源分享

    通过以上对Java基础知识的回顾以及高级进阶知识点的介绍,我们不仅了解了Java作为一种广泛使用的编程语言的基本特性和核心概念,还深入探讨了其高级特性、设计模式以及相关的技术和框架。这些知识对于希望进一步提升...

Global site tag (gtag.js) - Google Analytics