- https://www.cnblogs.com/wwtao/p/11473938.html
- https://www.cnblogs.com/elvi/p/8463812.html
什么是容器:是应用程序封装和交付的一种核心技术
容器技术由以下几个内核核心组成:Cgroups (control , groups) 资源管理
namespace 进程隔离
selinux 安全
由于是在物理机上的隔离 所以 启动一个容器就像启动一个进程一样快速
什么是docker: 是完整的一套容器管理系统
docker提供了一组命令,让用户更加方便直接地 使用容器技术 而不用过多关系底层内核技术
docker的优点: 相比于传统的虚拟化技术 容器更加简单高效
传统的虚拟机需要给每个vm安装操作系统
容器使用的公共共享库与程序
缺点:容器的隔离性没有虚拟化强,共用linux内核,安全性有先天缺陷 ,selinux难以驾驭 ,容器的监控与排错是挑战
基于阿里源 可以直接yum install docker
systemctl restart docker
ifconfig 出现 docker0 说明环境部署成功
docker version //查看版本
在docker中容器是基于镜像启动的 镜像是容器的核心 镜像采用分层设计 使用快照的cow技术,确保底层数据不丢失
官方镜像仓库 https://hub.docker.com 公共的镜像仓库(Registry)
加速器 https:
对于使用 systemd 的系统,请在 /etc/docker/daemon.json
中写入如下内容(如果文件不存在请新建该文件)
{
"registry-mirrors": [
"https://dockerhub.azk8s.cn",
"https://reg-mirror.qiniu.com"
]
}
注意,一定要保证该文件符合 json 规范,否则 Docker 将不能启动。
之后重新启动服务。
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
注意:如果您之前查看旧教程,修改了
docker.service
文件内容,请去掉您添加的内容(--
检查加速器是否生效
执行
$ docker info
,如果从结果中看到了如下内容,说明配置成功。Registry Mirrors: https://dockerhub.azk8s.cn/
registry-mirror=https://dockerhub.azk8s.cn
)
docker 命令
docker images 查看镜像
docker pull 下载镜像 docker push 上传镜像 上传到官方 需要注册
docker search 查找镜像
docker save docker.io/busybox:latest -o busybox.tar 将本地镜像导出为tar包
docker load -i nginx.tar 将tar包导入到镜像
docker rmi docker.io/nginx 删除镜像
for i in * ; do docker load -i $i; done 导入多个镜像 *表示当前路径下的tar包文件名
启动镜像
1)启动centos镜像生成一个容器
启动镜像时若不知道后面的命令加什么:
1、可以猜(如:/bin/bash、/bin/sh)
2、可以不加后面的命令,默认启动