前言
写
给
自
己
看
的
一
篇
文
章
,
非
常
的
基
础
,
当
做
是
记
录
学
习
d
o
c
k
e
r
的
过
程
,
以
后
方
便
回
顾
,
\color{red}写给自己看的一篇文章,非常的基础,当做是记录学习docker的过程,以后方便回顾,
写给自己看的一篇文章,非常的基础,当做是记录学习docker的过程,以后方便回顾,
若
是
没
有
了
解
d
o
c
k
e
r
的
可
以
看
看
,
学
习
过
的
就
不
推
荐
了
\color{red}若是没有了解docker的可以看看,学习过的就不推荐了
若是没有了解docker的可以看看,学习过的就不推荐了
Docker的基本组成
镜像(image)
镜
像
就
是
一
个
只
读
的
模
板
,
镜
像
可
以
用
来
创
建
D
o
c
k
e
r
容
器
,
一
个
镜
像
可
以
创
建
很
多
容
器
\color{red}镜像就是一个只读的模板,镜像可以用来创建Docker容器,一个镜像可以创建很多容器
镜像就是一个只读的模板,镜像可以用来创建Docker容器,一个镜像可以创建很多容器
容器(container)#
D
o
c
k
e
r
利
用
容
器
独
立
运
行
的
一
个
或
一
组
应
用
。
容
器
是
用
镜
像
创
建
的
运
行
实
例
。
\color{red}Docker利用容器独立运行的一个或一组应用。容器是用镜像创建的运行实例。
Docker利用容器独立运行的一个或一组应用。容器是用镜像创建的运行实例。
它 可 以 被 启 用 , 开 始 , 停 止 , 删 除 。 每 个 容 器 都 是 相 互 隔 离 的 , 保 证 安 全 的 平 台 。 \color{red}它可以被启用,开始,停止,删除。每个容器都是相互隔离的,保证安全的平台。 它可以被启用,开始,停止,删除。每个容器都是相互隔离的,保证安全的平台。
可
以
把
容
器
看
作
是
一
个
简
易
版
的
L
i
n
u
x
环
境
(
包
括
r
o
o
t
用
户
权
限
,
进
程
空
间
,
用
户
空
间
和
网
络
空
间
等
)
和
\color{red}可以把容器看作是一个简易版的Linux环境(包括root用户权限,进程空间,用户空间和网络空间等)和
可以把容器看作是一个简易版的Linux环境(包括root用户权限,进程空间,用户空间和网络空间等)和
运
行
在
其
中
的
应
用
程
序
。
\color{red}运行在其中的应用程序。
运行在其中的应用程序。
容 器 的 定 义 和 镜 像 几 乎 一 摸 一 样 , 也 是 一 堆 层 的 统 一 视 角 , 唯 一 区 别 在 于 容 器 的 最 上 面 那 一 层 是 可 读 可 写 的 \color{red}容器的定义和镜像几乎一摸一样,也是一堆层的统一视角,唯一区别在于容器的最上面那一层是可读可写的 容器的定义和镜像几乎一摸一样,也是一堆层的统一视角,唯一区别在于容器的最上面那一层是可读可写的
仓库(repository)#
仓
库
是
集
中
存
放
镜
像
文
件
的
场
所
。
\color{red}仓库是集中存放镜像文件的场所。
仓库是集中存放镜像文件的场所。
仓
库
和
仓
库
注
册
服
务
器
(
R
e
g
i
s
t
r
y
)
是
有
区
别
的
,
仓
库
注
册
服
务
器
上
往
往
存
放
着
多
个
仓
库
,
\color{red}仓库和仓库注册服务器(Registry)是有区别的,仓库注册服务器上往往存放着多个仓库,
仓库和仓库注册服务器(Registry)是有区别的,仓库注册服务器上往往存放着多个仓库,
每
个
仓
库
中
又
包
含
了
多
个
镜
像
,
每
个
镜
像
有
不
同
的
标
签
\color{red}每个仓库中又包含了多个镜像,每个镜像有不同的标签
每个仓库中又包含了多个镜像,每个镜像有不同的标签
仓 库 分 为 公 开 仓 库 ( p u b l i c ) 和 私 有 仓 库 ( p r i v a t e ) 两 种 形 式 \color{red}仓库分为公开仓库(public)和私有仓库(private)两种形式 仓库分为公开仓库(public)和私有仓库(private)两种形式
最 大 的 开 放 仓 库 是 D o c k e r H u b : h t t p s : / / h u b . d o c k e r . c o m / 存 放 了 数 量 庞 大 的 镜 像 供 用 户 下 载 。 \color{red}最大的开放仓库是Docker Hub: https://hub.docker.com/ 存放了数量庞大的镜像供用户下载。 最大的开放仓库是DockerHub:https://hub.docker.com/存放了数量庞大的镜像供用户下载。
国 内 的 公 开 仓 库 包 括 阿 里 云 , 网 易 云 等 \color{red}国内的公开仓库包括阿里云,网易云等 国内的公开仓库包括阿里云,网易云等
Docker的架构图
阿里云镜像加速
-
登录阿里云账号,点击控制台
https://www.aliyun.com/?utm_content=se_1007692031
-
搜索:镜像容器服务
-
查看自己的加速地址
- 在linux上配置加速器
vim /etc/sysconfig/docker
将获得的自己账户下的阿里云加速地址配置进
other_args="--registry-mirror=https://你自己的账号加速信息.mirror.aliyuncs.com"
- 重启Docker后台服务
service docker restart
ps -ef | grep docker
永远的Hello World
docker run hello-world
docker run做了什么?
- Docker在本机上查找镜像
- 若找到镜像,则以该镜像为模板运行
- 若本机找不到镜像,则去Docker Hub上查找该镜像
- 若Docker Hub上能找到该镜像,则以该镜像模板运行实例
- 若Docker Hub上找不到该镜像,则返回找不到镜像错误信息
常用命令
帮助命令
docker version
docker info
docker --help
镜像命令
- docker images
-a:列出本地所有的镜像,包括中间印像层
-q:只显示镜像ID
–digests:显示镜像的摘要信息
–no-trunc:显示完整的镜像信息
docker images
docker images -a
docker images -q
docker images -aq
docker images --digests
docker images --no-trunc
2. docker search 【参数】镜像名称
–no-trunc:显示完整的镜像描述
-s:列出收藏数不小于指定值的镜像
–automated:只列出automated build类型的镜像
docker search hello-world
docker search -s 10 hello-world
docker search --no-trunc hello-world
docker search -s 10 --automated hello-world
docker search -s 10 --automated --no-trunc hello-world
3. docker pull 镜像名称:【TAG】,默认是laster
docker pull hello-world
==
docker pull hello-world:latest
docker pull hello-world:linux
3. 删除镜像
docker rmi 镜像名字
// 删除单个镜像
docker rmi -f 镜像ID
// 删除多个镜像
docker rmi -f 镜像名1:Tag 镜像名2:Tag
// 删除所有镜像
docker rmi -f ${docker images -q}
4. 运行镜像
docker run 【参数】 镜像ID
-p主机端口:docker容器端口
-P随机分配端口
-i 交互
-t 终端
一般-it连着一起用
// 以交互终端的形式运行tomcat
docker run -it tomcat
// 以后台的形式运行tomcat
docker run tomcat
// 查看当前正在运行的docker情况
docker ps
// 随机端口映射
docker run -P tomcat
// 宿主机的8888端口映射到tomcat的8080端口,外部通过8888端口访问
docker run -p 8888:8080 tomcat
- 提交镜像
docker commit 容器ID 要创建的目标镜像:[标签名]
-m:提交的描述信息
-a: 做着
案例:
- 从Hub上下载一个tomcat镜像到本地并且运行成功
docker run tomcat:8.5.32
2. 故意删除上一步镜像生产tomcat的文档
3. 当前的实例运行的是一个没有doc内容的容器,以它为模板commit一个没有doc的新的镜像
4. 启动新的镜像和原来的做对比
总结
授 人 以 鱼 不 如 授 人 以 渔 , 知 道 的 越 多 , 不 知 道 的 越 多 , 希 望 对 你 有 帮 助 ! \color{red}授人以鱼不如授人以渔,知道的越多,不知道的越多,希望对你有帮助! 授人以鱼不如授人以渔,知道的越多,不知道的越多,希望对你有帮助!