相信看了前几篇文章,大家对 Docker 有了一定的了解,也掌握了 Docker 的基本使用方法。 很多时候,我们需要的不只是单独的一个服务,而是需要很多服务连接起来的,比如要搭建个博客系统,博客系统的镜像可能只包含 PHP 和 Web 服务器,但是数据的存储还需要用到服务器,这就需要再创建一个数据库容器。 但是默认情况下,每个容器都是独立的,都是不可互相访问的,如何将容器连接起来呢? 相信有一些小伙伴看了上篇《网络驱动》的文章后已经有了些想法。 小山在这篇文章就教大家如何优雅的将容器连接起来,有两种方法,为了演示…

2019-06-26 3条评论 4479点热度 小山 阅读全文

在之前的几篇文章中,小山向大家介绍了 Docker,以及如何安装并且使用它。 我们使用 Docker 大多数的目的是用来搭建网络服务,比如搭建网站系统,而这些服务我们是要对外公开访问的,这就涉及到一个容器的网络问题,容器的网络是如何工作的,如何让容器里的服务可以对外访问。 这篇教程我们就来讲讲 Docker 几种网络驱动,以及它们是如何工作的,该如何使用它们。 Docker 的网络驱动默认情况下有四个:bridge、host、overlay 和 macvlan,还有一个特殊的网络驱动 none 用于禁止容器访问网络…

2019-06-26 0条评论 3470点热度 小山 阅读全文

上一篇文章讲了 Docker 容器的使用方法,我们还在上一篇文章提到过,容器里的数据默认是会随容器的消失而消失的。 如果想让数据持久保留,需要用到 Docker 的绑定挂载功能,这个功能可以将宿主系统的文件或文件夹挂载到容器里,也可以使用 Docker 卷来创建一个卷并挂载到容器里。 下面我们就一起来了解下这两种方法以及如何使用。 讲数据持久化之前,先来说一下如何导出和导入容器里的文件。 如果想复制文件到容器里,或者是把容器里的文件复制出来,很简单,使用命令sudo docker cp 例如(假设容器正在后台运行)…

2019-06-25 2条评论 4070点热度 小山 阅读全文

上一篇文章我给大家介绍了 Docker 以及如何安装,这篇文章我们就正式开始使用 Docker,先从容器的基本使用方法开始。 上一篇文章已经大致介绍过容器了,容器是由 Docker 镜像创建的,镜像是由 Dockerfile 文件生成的,Dockerfile 包含了这个镜像的信息、依赖项以及需要执行的操作,如果我们需要自定义镜像,可以自己编写 Dockerfile 文件,鉴于我们这是新手入门的教程,Dockerfile 文件的编写不在本教程范围里。 Docker 创建一个容器后,这个容器便是一个独立于其他容器和宿主…

2019-06-25 0条评论 3581点热度 小山 阅读全文

在 Linux 环境下部署生产或测试环境往往是一件让人头疼的事,如果直接用系统的包管理器安装,软件的版本可能会很旧,如果自己手动编译安装,又会非常的麻烦,性能不好的前提下又非常的耗时间,还有各种依赖项需要解决。 如何能在 Linux 环境下,省时省力的部署生产或测试环境呢,而且最好还可以让不同机器上的环境都一致,在万能的 Linux 上面,当然是可以的啦。 目前最好的解决方案是 Docker,鉴于很多小伙伴不会使用 Docker,我决定花几篇文章给新入门的小伙伴大致的讲一下 Docker 如何使用。 Docker …

2019-06-25 2条评论 4161点热度 小山 阅读全文