Docker技术入门与实战
本人主要根据《Docker技术入门与实战》第二版的内容以及其他docker的相关博客,书籍等,进行了实战化操作,便想利用自己的博客记录下。一开始会质疑自己:有写博客的时间还不如多去了解其他的知识呢,不过为了给自己找个理由,那就是初学者还是多花点时间玩玩,加深下理解:)
安心Smile
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
使用Ambassador容器构建docker容器集群
当两个Docker容器在同一主机(或虚拟机)时,可以通过 --link 命令让两者直接互相访问。如果要跨主机实现容器互联,则往往需要容器知道物理主机的ip地址。利用Ambassador 容器机制,可以让互联的容器无需知道所在物理主机的IP地址即可互联。基本场景Ambassador 容器也是一种 docker 容器,她在内部提供了转发服务。如下图。当客户端容器要访问服务器时,直接访问客户...原创 2018-12-30 23:53:21 · 854 阅读 · 0 评论 -
7-Docker容器网络简介
docker 容器网络集成在 Libnetwork 库中,Libnetwork的目标是提供一个强大的容器网络模型CNM(Container Network Model),另一种CNI(Container Network Interface),为应用程序提供一致的编程接口和所需的网络抽象。这里主要讨论CNM模型,因为kuryr-Libnetwork就是这种模型的实现,kuryr-kubernetes...原创 2018-07-31 19:36:20 · 1481 阅读 · 0 评论 -
6.3 利用数据卷容器迁移数据
利用数据卷容器来备份、恢复、迁移数据卷可以利用数据卷对其中的数据进行进行备份、恢复和迁移。备份首先使用 --volumes-from 标记来创建一个加载 dbdata 容器卷的容器,并从主机挂载当前目录到容器的 /backup 目录。命令如下:$ sudo docker run --volumes-from dbdata -v $(pwd):/backup ubuntutar...原创 2018-11-30 17:20:21 · 562 阅读 · 0 评论 -
6.2 数据卷容器
如果你有一些持续更新的数据需要在容器之间共享,最好创建数据卷容器。数据卷容器,其实就是一个正常的容器,专门用来提供数据卷供其它容器挂载的。首先,创建一个名为 dbdata 的数据卷容器:$ sudo docker run -d -v /dbdata --name dbdata training/postgresecho Data-only container for postgre...原创 2018-11-30 17:11:10 · 269 阅读 · 0 评论 -
Docker 数据管理-6.1 数据卷
如何在 Docker 内部以及容器之间管理数据,在容器中管理数据主要有两种方式:数据卷(Data volumes) 数据卷容器(Data volume containers)本节先介绍数据卷,下一节介绍数据卷容器。数据卷数据卷是一个可供一个或多个容器使用的特殊目录,它绕过 UFS,可以提供很多有用的特性:数据卷可以在容器之间共享和重用 对数据卷的修改会立马生效 对数据卷的更新...原创 2018-11-30 17:06:36 · 225 阅读 · 0 评论 -
5.2-搭建docker本地私有registry
1. 实验环境2.无认证,无代理的本地私有registry 的搭建3.有认证无代理的私有本地registry的搭建4.总结 搭建docker 本地私有registry 可以有多种搭建方法:1.无认证、无代理2. 有认证、无代理3.有认证有代理的,本篇文档目前只介绍前两种,因为现在为了尽快完成部署k8s只实践了前两种。1. 实验环境:· 两台cen...原创 2018-06-30 20:00:19 · 679 阅读 · 0 评论 -
Docker仓库-5.1DockerHub
Docker Hub目前 Docker 官方维护了一个公共仓库 Docker Hub,其中已经包括了超过 15,000的镜像。大部分需求,都可以通过在 Docker Hub 中直接下载镜像来实现。登录可以通过执行 docker login 命令来输入用户名、密码和邮箱来完成注册和登录。 注册成功后,本地用户目录的 .dockercfg 中将保存用户的认证信息。基本操作用户...原创 2018-11-28 21:39:53 · 255 阅读 · 0 评论 -
4.6-容器访问
外部访问容器容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过 -P 或 -p 参数来指定端口映射。当使用 -P 标记时,Docker 会随机映射一个 49000~49900 的端口到内部容器开放的网络端口。使用 docker ps 可以看到,本地主机的 49155 被映射到了容器的 5000 端口。此时访问本机的 49155 端口即可访问容器内 web 应用提供的界面。...原创 2018-10-27 15:05:32 · 432 阅读 · 0 评论 -
4.5-导入和导出容器
1.导出容器如果要导出本地某个容器,可以使用 docker export 命令。格式为:docker export [OPTIONS] CONTAINER主要选项:-o, --output string :导出到一个指定文件中。 $ sudo docker ps -a $ sudo docker export ebffb5576461 > ubuntu.tar...原创 2018-10-27 14:56:03 · 1008 阅读 · 0 评论 -
4.4-删除容器
使用docker rm 删除容器。格式为:docker rm [OPTIONS] CONTAINER [CONTAINER...]主要选项:-f, --force :是否强行终止并删除一个运行的容器; -l, --link:删除容器的连接,但保留容器; -v, --volumes:删除容器挂载的数据卷例如:$ docker ps -aCONTAINER ID ...原创 2018-10-27 14:40:47 · 2118 阅读 · 0 评论 -
4.3-进入容器
在使用 -d 参数时,容器启动后会进入后台。 某些时候需要进入容器进行操作,有很多种方法,包括使用 docker attach 命令、docker exec 命令或 nsenter 工具等。1. attach 命令格式为docker attach [OPTIONS] CONTAINER主要选项:--detach-keys string :指定退出attach模式的快捷...原创 2018-10-27 14:32:30 · 377 阅读 · 0 评论 -
4.2-终止容器
可以使用 docker stop 来终止一个运行中的容器。此外,当Docker容器中指定的应用终结时,容器也自动终止。 进入一个终端的容器后,用户通过 exit 命令或 Ctrl+d 来退出终端时,所创建的容器立刻终止,处于exited状态。终止状态的容器可以用 docker ps -a 命令看到。例如:docker ps -a CONTAINER ID ...原创 2018-10-27 14:04:41 · 335 阅读 · 0 评论 -
Docker 容器-4.1创建容器
1.新建容器可以使用 docker create 命令新建一个容器,例如:$ docker create -it ubuntu:latest$ docke ps -a使用docker create 创建的容器属于停止状态。可以使用docker start 命令来启动。 create命令和run命令支持的选项比较多,这里不多介绍。2.启动容器使用 docker start...原创 2018-10-27 13:53:52 · 534 阅读 · 0 评论 -
3-3.8 Dockerfile 指令详解之二
上一篇文章介绍了Dockerfile指令详解之一,包括:FROM 指定基础镜像RUN 执行命令COPY 复制文件ADD 更高级的复制文件CMD 容器启动命令ENTRYPOINT 入口点ENV 设置环境变量目录1. ARG 构建参数2. VOLUME 定义匿名卷3. EXPOSE 声明端口4. WORKDIR 指定工作目录5. USER 指定当前用...原创 2018-10-27 12:09:11 · 470 阅读 · 0 评论 -
3-3.8 Dockerfile 指令详解之一
Dockerfile提供了一种模板文件形式来创建docker镜像的方式,有其特有的指令,本篇详解其用法。目录FROM 指定基础镜像RUN 执行命令COPY 复制文件ADD 更高级的复制文件CMD 容器启动命令ENTRYPOINT 入口点ENV 设置环境变量FROM 指定基础镜像所谓定制镜像,那一定是以一个镜像为基础,在其上进行定制。而FROM 就是指定基础...原创 2018-10-27 11:09:26 · 584 阅读 · 0 评论 -
3-3.7 上传docker镜像
上传镜像使用docker push镜像到仓库,默认上传到DockerHub官方仓库,需要账号密码,命令格式:docker push [OPTIONS] NAME[:TAG]例如上传docker.io/busybox:latest 镜像。1 首先准备一个hub 的帐号, 去 https://hub.docker.com 注册2 在hub那里新建一个仓库, 这个就类似于githu...原创 2018-09-24 19:11:08 · 326 阅读 · 0 评论 -
3-3.6 存出和载入docker镜像
使用 docker save 和 docker load 命令存出和载入镜像。存出镜像 将镜像存出到本地文件,使用docker save 。例如将busybox:latest镜像存出为文件bbox_latest.tar文件:# docker imagesREPOSITORY TAG ...原创 2018-09-24 18:31:44 · 292 阅读 · 0 评论 -
3-3.5.1 docker build 用法
在包含Dockerfile 文件的目录下执行:docker build -t nginx:v3 .即是创建了镜像。docker build 命令进行镜像构建。其格式为:docker build [选项] <上下文路径/URL/->镜像构建上下文(Context)如果注意,会看到 docker build 命令最后有一个 . 。 . 表示当前目录...原创 2018-09-14 10:47:06 · 4145 阅读 · 6 评论 -
3-3.5 创建镜像
创建镜像的三种方式:基于已有镜像的容器创建、基于本地模板导入、基于Dockerfile创建。第三种基于Dockerfile创建镜像的方式会在后续章节深入讲解 1.使用commit 方式创建 思路:先获取一个镜像,进入容器中对容器进行修改,之后提交该容器,生成一个新镜像。 镜像是多层存储,每一层是在前一层的基础上进行的修改;而容器同样也是多层存储,是在以镜像为基础层,在...原创 2018-09-14 10:13:40 · 302 阅读 · 0 评论 -
3-3.4 删除镜像
rmi命令用于删除镜像。若不指定标签,则删除latest标签docker rmi [选项] <注册名称>/<镜像名称,id>:<标签>选项:-f、--force=false 强制删除镜像--no-prune=false 不删除不带标签的父级镜像1. 使用镜像标签删除镜像$ docker rmi hello-world$ docke...原创 2018-09-06 12:23:08 · 691 阅读 · 0 评论 -
3-3.3 查找镜像
search命令用与在docker hub 中搜索镜像 docker search <选项><搜索词>选项:--automated=false 只显示由docker hub 的automated build 创建的镜像--no-trunc=false 显示所有因为内容过长而省略的部分-s、--stars=0 显示评价为特定星级以上的镜像例如搜索 mysq...原创 2018-09-06 11:22:11 · 410 阅读 · 0 评论 -
3-3.2 查看镜像信息
使用 docker images 命令列出本地主机已有的镜像。比如:[root@centos7 ~] docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEdocker.io/busybox ...原创 2018-09-06 11:10:36 · 2047 阅读 · 0 评论 -
第3章 镜像--3.1 获取镜像
Docker 运行容器前需要本地存在对应的镜像,如果镜像不存在本地,Docker 会从镜像仓库下载(默认是 Docker Hub 公共注册服务器中的仓库)。本章将介绍更多关于镜像的内容,包括:从仓库获取镜像; 管理本地主机上的镜像; 介绍镜像实现的基本原理。获取镜像镜像时Docker 运行容器的前提。公共镜像仓库Docker Hub 以及阿里云的 容器镜像服务控制台上有大量的高质量...原创 2018-08-29 14:24:27 · 503 阅读 · 0 评论 -
第2章 Docker核心概念与安装--2.3 Docker 加速器配置
使用docker 拉取镜像时,可能遇到速度慢,或超时的情况,这时可以配置加速器。常用加速器:Docker 官方的中国镜像加速器:从2017年6月9日起,Docker 官方提供了在中国的加速器,以解决墙的问题。不用注册,直接使用加速器地址:https://registry.docker-cn.com 即可。 中国科技大学的镜像加速器:中科大的加速器不用注册,直接使用地址 https://d...原创 2018-07-31 20:56:06 · 481 阅读 · 0 评论 -
第2章 Docker核心概念与安装--2.2 Linux 各发行版内核升级与Docker 安装
Docker 支持在主流的操作系统平台上使用,包括Ubuntu、Centos、Windows以及MacOS系统等。当然,在Linux系列平台上是原生支持,使用体验也是最好。官方网站上有各种环境下的 安装指南,这里主要介绍下 Ubuntu、Debian 和CentOS 系列的安装。Ubuntu、Debian 、CentOS系列安装 Docker系统要求Docker 支持以下版本的 U...原创 2018-08-18 21:53:20 · 847 阅读 · 0 评论 -
第2章 Docker核心概念与安装--2.1 基本概念
基本概念Docker 包括五个基本概念Docker 客户端 Docker daemonDocker 镜像(Image)Docker 容器(Container)Docker 仓库(Repository)以下简单介绍。1. Docker 客户端Docker 是一个典型的 C/S 结构的引用程序,但在发不上,Docker 将客户端和服务器统一在同一个二进制文件中,不过...原创 2018-08-18 20:13:44 · 292 阅读 · 0 评论