综合( 右侧选择分类 )
hangge

Docker - 在容器中运行Apache服务器(httpd)

Docker生态系统最吸引人的地方在于我们可以任意下载并使用数以万计的已有容器。下面演示如何使用Apache容器作为Web服务器。(1)首先确保我们的电脑已经安装了docker环境,没有的话可以参考我之前写的文章:CentOS下 Docker、Docker Compose 的安装教程(附详细步骤)(2)docker环境准备好之后,执行如下命令下载httpd的docker镜像:dockerpull
156 人浏览
hangge

Docker - 在容器中搭建运行FTP服务器(vsftpd)

使用Docker搭建FTP服务,不仅十分简单,而且可以对宿主机有一定的隔离。下面以CentOS系统为例,演示如何通过容器运行FTP服务。1,拉取镜像首先执行如下命令将镜像下载到本地:dockerpullfauria/vsftpd2,启动容器执行如下命令实例化ftp服务:参数说明:/home/ftp:/home/vsftpd:映射docker容器ftp文件根目录(冒号前面是宿主机的目录)-p:映
346 人浏览
hangge

Docker - 加速镜像下载(使用DaoCloud镜像服务)

由于Docker Hub的服务器在国外,我们平时下载镜像可能会比较慢。好在DaoCloud为我们提供了免费的镜像服务,下面介绍如何配置使用这个镜像服务。(1)首先访问DaoCloud网站,注册一个用户。https://www.daocloud.io/(2)登录后,点击顶部菜单的“加速器”图标。(3)在弹出页面中找到适合自己系统的配置命令。(4)比如我是CentOS系统,则在命令终端中执行如下命令
150 人浏览
hangge

Docker - 常用命令汇总1(镜像管理、容器运行、停止、进入等)

一、镜像管理1,下载镜像我们使用docker pull命令从Docker Hub上下载指定镜像:hello-world是Docker官方提供的一个镜像,通常用来验证Docker是否安装成。dockerpullhelle-world2,搜索镜像使用docker search命令可以搜索Docker Hub中的镜像。3,查看已下载的镜像使用docker images命令可以查看所有已下载到本地的镜像。
147 人浏览
hangge

Docker - 常用命令汇总2(容器资源限制:内存、CPU、带宽)

一个docker host上会运行若干个容器,每个容器都需要CPU、内存和io资源。我们可以控制分配多少CPU、内存资源给每个容器,从而避免某个容器因占用太多资源而影响其他容器乃至整个host的性能。一、内存限额1,参数说明与操作系统类似,容器可使用的内存包括两部分:物理内存和swap。docker通过下面两组参数来控制内存的使用量:-m或--memory:设置内存的使用限额,例如100MB,
146 人浏览
hangge

Docker - 容器存储详解1(使用Data Volume实现数据持久化)

对于有些容器,我们可能会有持续化数据的需求,也就是容器启动时需要加载已有的数据,容器销毁时希望保留产生的数据,也就是说这类容器是有状态的。 这个就需要用到Docker的Data Volume存储机制。Data Volume本质上是Docker Host文件系统中的目录或文件,能够直接被mount到容器的文件系统。 在具体的使用上,docker提供了两张类型的volume:bind mount
130 人浏览
hangge

Docker - 容器存储详解2(volume container、data-packed volume container)

三、volume container1,基本介绍volume container是专门为其它容器提供volume的容器。volume container提供的卷可以是bind mount,也可以是docker managed volume。2,volume container 的优点 与bind mount相比,不必为每一容器指定host path,所有path都在volume containe
150 人浏览
hangge

Docker - 加速镜像下载(使用DaoCloud镜像服务)

由于Docker Hub的服务器在国外,我们平时下载镜像可能会比较慢。好在DaoCloud为我们提供了免费的镜像服务,下面介绍如何配置使用这个镜像服务。(1)首先访问DaoCloud网站,注册一个用户。https://www.daocloud.io/(2)登录后,点击顶部菜单的“加速器”图标。(3)在弹出页面中找到适合自己系统的配置命令。(4)比如我是CentOS系统,则在命令终端中执行如下命令
129 人浏览
hangge

Docker - 常用命令汇总1(镜像管理、容器运行、停止、进入等)

一、镜像管理1,下载镜像我们使用docker pull命令从Docker Hub上下载指定镜像:hello-world是Docker官方提供的一个镜像,通常用来验证Docker是否安装成。1docker pull helle-world2,搜索镜像使用docker search命令可以搜索Docker Hub中的镜像。3,查看已下载的镜像使用docker images命令可以查看所有已下载到本地的
163 人浏览
hangge

Docker - 常用命令汇总2(容器资源限制:内存、CPU、带宽)

一个docker host上会运行若干个容器,每个容器都需要CPU、内存和io资源。我们可以控制分配多少CPU、内存资源给每个容器,从而避免某个容器因占用太多资源而影响其他容器乃至整个host的性能。一、内存限额1,参数说明与操作系统类似,容器可使用的内存包括两部分:物理内存和swap。docker通过下面两组参数来控制内存的使用量:-m或--memory:设置内存的使用限额,例如100MB,
139 人浏览
hangge

Docker - 容器存储详解1(使用Data Volume实现数据持久化)

对于有些容器,我们可能会有持续化数据的需求,也就是容器启动时需要加载已有的数据,容器销毁时希望保留产生的数据,也就是说这类容器是有状态的。 这个就需要用到Docker的Data Volume存储机制。Data Volume本质上是Docker Host文件系统中的目录或文件,能够直接被mount到容器的文件系统。 在具体的使用上,docker提供了两张类型的volume:bind moun
141 人浏览
hangge

Docker - 容器存储详解2(volume container、data-packed volume container)

三、volume container1,基本介绍volume container是专门为其它容器提供volume的容器。volume container提供的卷可以是bind mount,也可以是docker managed volume。2,volume container 的优点 与bind mount相比,不必为每一容器指定host path,所有path都在volume containe
138 人浏览
hangge

Docker - 容器存储详解3(销毁Data Volume)

由于docker不会销毁bind mount,删除数据的工作只能由host负责。下面介绍如何删除docker managed volume。五、销毁 Data Volume1,删除数据的基本方法对于docker managed volume,在执行docker rm删除容器时可带上-v参数,docker会将容器使用到的volume删除。但其前提是没有其它容器mount该volume,目的是保护
139 人浏览
hangge

Docker - 镜像构建教程1(使用docker commit命令构建镜像)

Docker提供了两种构建镜像的方法:docker commit命令与Dockerfile构建文件。本文先介绍前者,也就是如何使用docker commit命令把一个正在运行的容器变成一个新的镜像。注意Docker并不建议用户通过docker commit方式构建镜像:一是因为这是一种手工创建镜像的方式,容易出错,效率低且可重复性弱。二是使用者并不知道镜像是如何创建出来的,里面是否有恶意程序。也
145 人浏览
hangge

Docker - 镜像构建教程2(使用Dockerfile构建镜像)

Docker提供了两种构建镜像的方法:docker commit命令与Dockerfile构建文件。日常使用中推荐通过后者(Dockerfile)来构建镜像,下面通过样例进行演示。一、使用 Dockerfile 构建镜像样例1,创建一个 Dockerfile 文件(1)Dockerfile其实是一个文本文件,记录了镜像构建的所有步骤。我们可以通过vi命令创建它。1vi Dockerfile(2)
167 人浏览
hangge

Docker - 构建一个带有ping、ifconfig命令的Ubuntu镜像

用Docker拉取的Base镜像(如Centos、Ubuntu)都是最简版本,不包含Ping工具。但有时我们需要用到Ping工具来测试两个容器间的网络连接,下面演示如何创建并使用一个带有ping命令 的Ubuntu镜像。1,构建镜像(1)首先我们创建一个Dockerfile文件,内容如下:1234FROM ubuntu:latestRUN apt-get update \&&
146 人浏览
hangge

Docker - 网络使用详解1(原生网络介绍:none、host、bridge)

一、原生网络介绍1,查看网络Docker安装时会自动在host上创建三个网络:none、host、bridge。我们可以使用如下命令进行查看:1docker network ls2,none 网络(1)none网络就是什么都没有的网络,一些对安全性有求高并且不需要联网的应用可以使用none网络。比如:某个容器的唯一用途是生成随机密码,就可以放到none网络中避免密码被窃取。(2)我们可以使用--n
150 人浏览
hangge

Docker - 网络使用详解2(创建自定义网络:user-defined)

容器除了可以直接使用none、host、bridge这三个自动创建的网络外,用户也可以根据业务需要创建user-defined网络。二、创建自定义网络Docker提供三种user-defined网络驱动:bridge,overlay和macvlan。其中overlay和macvlan用于创建跨主机的网络。本文主要介绍创建bridge自定义网络。1,创建自定义的 bridge 网络(1)我们执行如下
136 人浏览
hangge

Docker - 网络使用详解3(容器间的相互通信:IP、容器名、joined容器)

容器之间可以通过IP、Docker DNS Server或者joined容器这三种方式进行通信,下面分别进行介绍。三、容器间的相互通信1,通过 IP 通信(1)IP通信就是直接用IP地址来进行通信。两个容器如果需要通过IP通信,那么它们就必须处于同一个网络,也就是说要有属于同一个网络的网卡。(2)如果两个容器不在同一个网络,我们可以为其中一个容器添加另外一个容器的网络,这样它们也就能够通过IP
185 人浏览
hangge

Docker - 将制作好的镜像上传到Docker Hub仓库(附操作步骤)

镜像制作好之后如果想要进行保存和分发,最直接的方法就是使用Docker Hub。Docker Hub是Docker公司维护的公共Registry。我们可以将自己的镜像保存到Docker Hub免费的repository中。下面介绍如何使用Docker Hub存取我们的镜像。1,账号注册与登录(1)首先在Docker Hub上注册一个账号:官网地址:https://hub.docker.com/
140 人浏览