Docker
Docker的使用语法
董哥的黑板报
90后程序员!
展开
-
入门篇!虚拟化容器技术与Docker总体概述
一、容器技术概述在计算机的世界中,容器拥有一段漫长且传奇的历史。容器与管理程序虚拟化(hypervisor virtualization,HV)有所不同,管理程序虚拟化通过中间层将一台或者多台独立的机器虚拟运行与物理硬件之上,而容器则是直接运行在操作系统内核之上的用户空间。因此,容器虚拟化也被称为“操作系统级虚拟化”,容器技术可以让多个独立的用户空间运行在同一台宿主机上 由于“客居”于操作系统,容器只能运行与底层宿主机相同或者相似的操作系统,这看起来并不是非常灵活。例如:可以在Ubuntu服务中运..原创 2020-07-15 11:35:08 · 2464 阅读 · 0 评论 -
手把手教学,带你在Linux、OS X、Windows下Docker的安装
一、前言Docker的安装既快又简单。目前,Docker已经支持非常多的Linux平台,包括Ubuntu和RHEL(Red Hat Enterprise Linux,Red Hat企业版Linux)。除此之外,Docker还支持Debian、CentOS、Fedora、Oracle Linux等衍生系统和相关的发行版。如果使用虚拟环境,甚至也可以在OS X和Microsoft Windows中运行Docker 目前来讲,Docker团队推荐在Ubuntu、Debian或者RHEL系列(CentOS、F原创 2020-07-15 11:36:12 · 1467 阅读 · 0 评论 -
手头没资源?机器不够用?带你使用云端Docker(Play with Docker)
一、介绍Play with Docker(PWD)是由Marcos Liljedhal和Jonathan Leibiusky发起的一个项目,由Docker公司赞助 Play with Docker是一个网址,免费提供了一个在线的Docker操作平台,你可以在里面对Docker进行操作和学习 国内访问Play with Docker可能会非常满,因此需要进行翻墙才可以快速访问二、使用演示第一步:进入官网https://labs.play-with-docker.com/,然后点击"Login"进原创 2020-12-25 22:58:47 · 2751 阅读 · 1 评论 -
带你了解Docker背后的守护进程
一、守护进程介绍Docker以root权限运行它的守护进程,来处理普通用户无法完成的操作(如挂载文件系统)。docker程序是Docker守护进程的客户端程序,同样也需要以root身份运行。用户可以使用“docker daemon”命令控制Docker守护进程备注在Docker 1.8之前,Docker守护进程是通过-d标志来控制的,而没有docker daemon子命令/var /run/docker.sock: 守护进程监听这个Unix套接字文件,来获取来自客户端的Docker请求原创 2020-07-15 12:42:02 · 3635 阅读 · 0 评论 -
命令行大全,带你领略Docker容器的使用
一、查看Docker的信息(info)通过下面的命令可以查看Docker的工作情况sudo docker info该命令会返回所有容器和镜像的数量、Docker使用的执行驱动和存储驱动(execution and storage driver)、以及Docker的基本配置二、运行Docker容器(run)可以使用下面的命令来创建一个容器,相关含义如下: -i:保证容器STDIN是开启的 -t:告诉Docker为要创建的容器分配一个伪tty终端。这样新创建的容器就可以提供一个交互原创 2020-07-15 16:08:11 · 1442 阅读 · 0 评论 -
超详细,带你玩转Docker镜像、Docker Hub仓库、镜像的查看、标签、拉取、查找
一、镜像介绍docker镜像是由文件系统叠加而成,最底端是一个引导文件系统,即bootfs,这很像典型的linux的引导文件系统。docker用户几乎永远不会和引导系统有什么交互。实际上,当一个容器启动后,它会被移到内存中,而引导文件系统则会被卸载,以留出更多的内存共initrd磁盘镜像使用 到目前为止,docker看起来还很像一个典型的linux虚拟化栈。实际上,docker镜像的第二层是root文件系统rootfs,它位于引导文件系统之上 在传统的linux引导过程中,root文件系统会最先以只原创 2020-07-16 11:11:20 · 16833 阅读 · 1 评论 -
超详细,带你本地连接Docker Hub、玩转镜像的构建、构建历史、推送、删除
一、构建镜像介绍我们可以定制属于自己的Docker镜像,然后将Docker镜像存储到存储库中 构建镜像的方法有2种: 使用docker commit命令 使用docker build命令和Dockerfile文件 不推荐使用docker commit命令,建议使用docker build命令(编写完Dockerfile然后使用docker build命令) 备注:此处我们不是真正“创建”新镜像,而是对已有镜像进行修改构建。如果想要从0构建一个全新的镜像,可以参阅:https://docs原创 2020-07-16 21:03:52 · 5854 阅读 · 0 评论 -
核心篇,你必须要会的Dockerfile指令详解
一、Dockerfile介绍在前面的文章(https://dongshao.blog.csdn.net/article/details/107389320)中我们介绍了若干种构造镜像的方式,其中一种方式就是基于Dockerfile构造镜像 关于使用Dockerfile构造镜像的演示案例,请参阅上面的链接二、Dockerfile构建失败时会怎样?如果在构建的过程中,Dockerfile某一步骤出错会怎样?下面通过一个演示案例来看看演示案例第一步:编写当前路径下的Dockerfile,将第一原创 2020-12-25 22:16:13 · 2124 阅读 · 0 评论 -
满足你的需求,简单带你玩玩Docker私有Registry的创建与使用
一、运行私有的Docker Registry显然,拥有 Docker 镜像的一个公共的 Registry 非常有用,但是,有时候我们可能希望构建和存储包含不想被公开的信息或数据的镜像。这时候我们有以下两种选择 利用 Docker Hub 上的私有仓库。 在防火墙后运行我们自己的 Registry。 感谢 Docker 公司的团队开源了他们用于运行 Docker Registry 代码,这样我们就可以基于此代码在内部运行自己的 Registry。目前 Registry 还不支持用户界面,只能以原创 2020-07-16 22:07:48 · 1057 阅读 · 0 评论 -
长文讲述Docker的4大网络模型(host、container、none、bridge)
docker在安装后会默认生成三种网络,none、bridge及host我们在使用docker run创建Docker容器时,可以用--net选项指定容器的网络模式,Docker有以下4种网络模式: host模式,使用--net=host指定 container模式,使用--net=container:NAME_or_ID指定 none模式,使用--net=none指定 bridge模式,使用--net=bridge指定,默认设置 一、host模式众所周知,Docker使用了L原创 2020-12-26 11:12:17 · 1861 阅读 · 0 评论 -
千字整理,带你全面了解Docker容器的连接通信方式:Docker网络连接、Docker Networking、Docker链接
待续原创 2020-07-27 15:39:28 · 1158 阅读 · 0 评论 -
玩转Docker实战篇!使用Docker搭建Nginx静态网站,附加介绍Docker容器数据卷
一、文本目的前面学完了Docker的一些常用语法,现在来开始将Docker用于构建和测试 将Docker作为本地Web开发环境是Docker的一个最简单的应用场景。这样的环境可以完全复制生产环境,并确保用户开发的东西在生产环境中也能运行。下面从将Nginx Web服务器安装到容器来架构一个简单的网站开始,这个网站的名字暂时命名为sample二、创建Nginx配置文件创建一个nginx目录,用来存放nginx的配置文件,然后创建两个配置文件,分别名为global.conf和nginx.conf原创 2020-07-17 09:40:49 · 1345 阅读 · 1 评论 -
玩转Docker实战篇!使用Docker搭建Sinatra Web程序,附加介绍容器关联(Docker Networking、Docker链接)
一、本文目的前面一篇文章,我们在Docker中搭建了Nginx服务器,并访问了Nginx服务器:https://blog.csdn.net/qq_41453285/article/details/107397371 本文测试一个更大的Web应用程序,名为Sinatra,然后我们基于Docker对这个应用程序进行测试 Sinatra是一个基于Ruby的Web应用框架,它包含一个Web应用库,以及简单的领域专用语言(即DSL)来构建Web应用程序。与其他复杂的Web应用框架(如Ruby on Rails原创 2020-07-20 17:37:10 · 853 阅读 · 0 评论 -
玩转Docker实战篇!使用Docker构建Apache+Jekyll博客网站,附加介绍卷的备份
本文新增的Docker知识点有: Dockerfile中VOLUME指令的使用 Dockerfile中WORKDIR指令的使用 docker run中--volumes-from选项的使用:使一个容器的目录挂载到另一个容器中 docker run中--rm选项的使用:容器只运行一次,随后立即删除 Docker容器卷的备份 一、本文目的本文构建一个使用Jekyll框架(https://jekyllrb.com/)的自定义网站 本文会构造两个镜像: 一个镜像安装了Jekyll及其他原创 2020-07-27 14:14:12 · 1172 阅读 · 0 评论 -
玩转Docker实战篇!使用Docker与Jenkins进行持续集成测试,附加介绍Docker-in-Docker
一、本文目的在前面的文章中,所有的测试例子都是本地的、围绕着单个开发者的(就是说,如何让本地开发者使用Docker来测试本地网站或者引用程序)。现在来看看在多开发者的持续集成测试场景中如何使用Docker Docker很擅长快速创建和处理一个或多个容器。这个能力显然可以为持续集成测试这个概念提供帮助。在测试场景里,用户需要频繁安装软件,或者部署到多台宿主机上,运行测试,再清理宿主机为下一次运行做准备 在持续集成环境里,每天要执行好几次安装并分发到宿主机的过程。这为测试生命周期增加了构建和配置开销。打原创 2020-07-27 15:38:55 · 1325 阅读 · 0 评论 -
玩转Docker实战篇!使用Docker构建一个Java Tomcat服务器
一、本文目的本文我们考虑把Docker作为引用服务器和编译管道。本文做一个更加“企业化”且用于传统工作负载的服务:获取Tomcat服务器上的WAR文件,并运行一个Java引用程序,为了做到这一点,我们创建了两个Docker镜像: 一个镜像从URL拉取指定的WAR文件并将其保存到卷中 一个含有Tomcat服务器的镜像运行上面那个卷目录下的WAR文件 本文的代码、文件链接本文用到的所有文件和代码,对应的Github链接为:https://github.com/dongyusheng/csdn原创 2020-07-27 17:09:07 · 864 阅读 · 0 评论 -
玩转Docker实战篇!使用Docker构建Consul分布式服务发现工具
一、服务发现服务发现是分布式应用程序之间管理相互关系的一种机制。一个分布式程序一般由多个组件组成。这些组件可以都放在一台机器上,也可以分布在多个数据中心,甚至分布在不同的地理区域。这些组件通常可以为其他组件提供服务,或者为其他组件消费服务 服务发现允许某个组件在想要与其他组件交互时,自动找到对方。由于这些应用沈本是分布式的,服务发现机制也需要分布式的。而且,服务发现作为分布式应用不同组件之间的“胶水”,其本身还需要足够动态、可开,适应性强,而且可以快速且一致地共享关于这些服务的数据 另外,Docke原创 2020-07-28 10:00:24 · 800 阅读 · 0 评论 -
不会容器编排?带你使用Docker容器编排工具Docker Compose(原Fig)
一、Docker编配和服务发现编配(orchestration)是一个没有严格定义的概念。这个概念概念大概描述了自动配置、协作和管理服务的过程。在Docker的世界里,编配用来描述一组时间过程,这个过程会管理运行在多个Docker容器里的引用,而这些Docker容器有可能运行在多个宿主机上。Docker对编配的原生支持非常弱,不过整个社区围绕编配开发和集成了很多很棒的工具 在现在的生态环境里,已经围绕Docker构建和继承了很多工具。一些工具只是简单地将多个容器快捷地“连”在一起,使用简单的组合来构建原创 2020-07-27 22:25:45 · 1297 阅读 · 0 评论 -
Docker API(Registry API、Docker Hub API、Docker Remote API)
一、Docker API简介在Docker生态系统中一共有3种API: Registry API:提供了与来存储Docker镜像的Docker Registry继承的功能 Docker Hub API:提供了与Docker Hub继承的功能 Docker Remote API:提供与Docker守护进程集成的功能 这3种API都是RESTful风格的 本文我们主要介绍Remote API,因为它是通过程序与Docker进行继承和交互的核心内容二、初识Remote APIRemo原创 2020-07-28 19:44:59 · 3788 阅读 · 0 评论 -
长文详解!Docker客户端与服务端TLS认证(Docker Remote API认证)
一、Docker Remote API的认证在前一篇文章我们介绍了Docker Remote API如何使用:https://blog.csdn.net/qq_41453285/article/details/107642615 在前一篇文章中我们介绍了如何连接到Docker Remote API,但是不意味着任何其他人都能连接到同样的API。从安全的角度上看,这存在一点儿安全问题。不过值得感谢的是,自Docker的0.9版本开始Docker Remote API开始提供了认证机制。这种认证机制采用了原创 2020-07-28 22:56:53 · 4697 阅读 · 6 评论