摘要: 什么是微服务? 将单一的应用程序划分为多个微小的服务,每个服务完成单一功能,这样的每个服务叫做一个微服务 什么是微服务的架构 将应用的每一个功能放在一个独立的服务中,每个服务对应一个进程 使用一组小型服务来开发单个应用每个服务运行在独立的进程中,服务与服务之间通过http的方式进行互相通信 每个服务 阅读全文
posted @ 2020-08-18 21:14 柒丶月 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 在实际的开发环境或者生产环境,容器往往都不是独立运行的,经常需要多个容器一起运行,此时,如果继续使用run命令启动容器,就会非常不便,在这种情况下,docker-compose是一个不错的选择,使用dockercompose可以实现容器编排,本文就来看看docker-compose的使用。本文以jp 阅读全文
posted @ 2020-08-18 19:47 柒丶月 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 一般来说,容器启动后,我们都是通过端口映射来使用容器提供的服务,实际上,端口映射只是使用容器服务的一种方式,除了这种方式外,还可以使用容器连接的方式来使用容器服务。 例如,有两个容器,一个容器运行一个SpringBoot项目,另一个容器运行着mysql数据库,可以通过容器连接使SpringBoot直 阅读全文
posted @ 2020-08-18 19:37 柒丶月 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 数据的备份操作很容易,执行如下命令: docker run --volumes-from mydata --name backupcontainer -v $(pwd):/backup/ ubuntu tar cvf /backup/backup.tar /usr/share/nginx/html/ 阅读全文
posted @ 2020-08-18 19:33 柒丶月 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 数据卷容器是一个专门用来挂载数据卷的容器,该容器主要是供其他容器引用和使用。所谓的数据卷容器,实际上就是一个普通的容器,举例如下: 创建数据卷容器 使用如下方式创建数据卷容器: docker run -itd -v /usr/share/nginx/html/ --name mydata ubunt 阅读全文
posted @ 2020-08-18 19:30 柒丶月 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 如果开发者使用了Dockerfile去构建镜像,也可以在构建镜像时声明数据卷,例如下面这样: FROM nginx ADD https://www.baidu.com/img/bd_logo1.png /usr/share/nginx/html/ RUN echo "hello docker vol 阅读全文
posted @ 2020-08-18 19:28 柒丶月 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 上文中对于数据卷的用法还不是最佳方案,一般来说,我们可能需要明确指定将宿主机中的一个目录挂载到容器中,这种指定方式如下: docker run -itd --name nginx -v /Users/sang/blog/docker/docker/:/usr/share/nginx/html/ -p 阅读全文
posted @ 2020-08-18 17:45 柒丶月 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 数据卷可以绕过拷贝系统,在多个容器之间、容器和宿主机之间共享目录或者文件,数据卷绕过了拷贝系统,可以达到本地磁盘I/O性能。 本文先通过一个简单的案例向读者展示数据卷的基本用法。 以前面使用的nginx镜像为例,在运行该容器时,可以指定一个数据卷,命令如下: docker run -itd --na 阅读全文
posted @ 2020-08-18 17:26 柒丶月 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 暴露网络端口 在前面的文章中,我们已经有用过暴露网络端口相关的命令了,即-p参数,实际上,Docker中涉及暴露网络端口的参数有两个,分别是-p和-P。下面分别来介绍. -P 使用-P,Docker会在宿主机上随机为应用分配一个未被使用的端口,并将其映射到容器开放的端口,以Nginx 为例,如下: 阅读全文
posted @ 2020-08-18 17:14 柒丶月 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 前面我们使用的Docker Hub是由Docker官方提供的,我们也可以搭建自己的Docker,搭建方式也很容器,因为 Docker官方已经将Docker注册服务器做成镜像了,我们直接pull下来运行即可。具体步骤如下: 拉取镜像 运行如下命令拉取registry官方镜像: docker pull 阅读全文
posted @ 2020-08-18 17:03 柒丶月 阅读(607) 评论(0) 推荐(0) 编辑
摘要: 自动化构建,就是使用Docker Hub连接一个包含Dockerfile文件的GitHub仓库或者BitBucket仓库,Docker Hub则会自动构建镜像,通过这种方式构建出来的镜像会被标记为Automated Build,也称之为受信构建(Trusted Build),这种构建方式构建出来的镜 阅读全文
posted @ 2020-08-18 16:54 柒丶月 阅读(451) 评论(0) 推荐(0) 编辑
摘要: 类似于GitHub提供的代码托管服务,Docker Hub提供了镜像托管服务,Docker Hub地址为https://hub.docker.com/,利用Docker Hub读者可以搜索、创建、分享和管理镜像。Docker Hub上的镜像分为两大类,一类是官方镜像,例如我们之前用到的nginx、m 阅读全文
posted @ 2020-08-18 16:40 柒丶月 阅读(1209) 评论(0) 推荐(0) 编辑
摘要: 上文中向读者介绍了简单的创建本地镜像的方式,但是commit方式存在一些问题,比如不够透明化,无法重复,体积较大,为了解决这些问题,可以考虑使用Dockerfile。 Dockerfile就是一个普通的文本文件,其内包含了一条条的指令,每一条指令都会构建一层。先来看一个简单的 例子。 首先在一个空白 阅读全文
posted @ 2020-08-18 14:52 柒丶月 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 通过前面文章阅读,读者已经了解到所谓的容器实际上是在父镜像的基础上创建了一个可读写的文件层级,所有的修改操作都在这个文件层级上进行,而父镜像并未受影响,如果读者需要根据这种修改创建一个新的本地镜像,有两种不同的方式,本文先来看第一种方式:commit。 创建容器 首先,根据本地镜像运行一个容器,如下 阅读全文
posted @ 2020-08-18 14:46 柒丶月 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 镜像也是docker的核心组件之一,镜像时容器运行的基础,容器是镜像运行后的形态。总体来说,镜像是一个包含程序运行必要以来环境和代码的只读文件,它采用分层的文件系统,将每一层的改变以读写层的形式增加到原来的只读文件上。 镜像与容器的关系 前文已经向读者介绍过容器的使用了,细心的读者可能已经发现,容器 阅读全文
posted @ 2020-08-18 14:32 柒丶月 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 容器导出 使用export命令可以导出容器,具体操作如下: 创建一个容器,进行基本的配置操作 本案例中我首先创建一个nginx容器,然后启动,启动成功后,将本地一个index.html文件上传到容器中,修改nginx首页的显示内容。具体操作步骤如下: docker run -itd --name n 阅读全文
posted @ 2020-08-18 13:26 柒丶月 阅读(403) 评论(0) 推荐(0) 编辑
摘要: 依附容器 docker attach 依附容器这个主要是针对交互型容器而言的,该命令有一定的局限性,可以只作为了解 要是用docker attach命令,首先要确保容器已经启动,然后使用该命令才能进入到容器中。具体操作步骤如下: 创建一个容器,然后启动: 不要关闭当前窗口,再打开一个新的终端执行do 阅读全文
posted @ 2020-08-18 10:18 柒丶月 阅读(128) 评论(0) 推荐(0) 编辑