虚拟机技术每家公司发展到一定规模都必须考虑的,更好的环境隔离,更好的事故排查,更好的服务部署
- docker的原理
- docker更换阿里源
- docker容器的相关命令
- Dockerfile文件编写
- docker镜像的相关命令
1 docker的原理
- Docker 利用Linux 中的核心分离机制,例如Cgroups,以及Linux的核心Namespace(名字空间)来创建独立的容器。一句话概括起来Docker就是利用Namespace做资源隔离,用Cgroup做资源限制,利用Union FS做容器文件系统的轻量级虚拟化技术。Docker容器的本质还是一个直接运行在宿主机上面的特殊进程,看到的文件系统是隔离后的,但是操作系统内核是共享宿主机OS,所以说Docker是轻量级的虚拟化技术
docker 镜像分层
- docker 容器,理解为一个或多个运行进程,而这些运行进程将占有相应的内存,相应的CPU计算资源,相应的虚拟网络设备以及相应的文件系统资源。而 docker 镜像,则像一个未运行的软件包,为 docker 容器的运行提供文件资源。
- docker 镜像是分层的。启动镜像时,一个新的可写层会加载到镜像的顶层。这一层通常称为"容器层",之下是"镜像层",可能存在多个层。容器层可以读写,容器所有发生文件变更写都发生在这一层。镜像层只允许读取,read-only
- 在容器层的文件增删操作,命令安装,都会被记录下来。我们可以通过 commit 命令来创建一个新的镜像

2 docker 更换阿里源
- ubuntu 18 的阿里镜像文件。使用下面的数据替换原 sources.list 里的数据
3 docker容器的相关命令
run 实例化容器
- 创建一个新的容器并运行:
docker run [options] image [command]
。image 可以是镜像ID 也可以是仓库名+Tag名:repository[:tag]
start、stop、restart 启动与停止
ps 容器查询
rm 删除容器
cp 文件传输
exec 在运行的容器中执行命令
logs 获取容器的日志
4 Dockerfile文件编写
5 docker 镜像的相关命令
- 镜像查看列举:
docker images
- 镜像搜索:
docker search <imageName>
;imageName 是 repository[:tag] 的模糊词 - 拉取:
docker pull repository[:tag]
- 删除单个镜像:
docker rmi 镜像ID
或者docker rmi repository[:tag]
- 给镜像打别名(标签):
docker tag oldRepository[/:oleTag] newRepository][/:newTag]
- 推送:
docker push repository[:tag]
参考文章
- docker ubuntu容器更换阿里源(转)[1]
- docker 常用命令[2]
- Dockerfile文件详解[3]
Reference
[1]docker ubuntu容器更换阿里源(转):https://www.cnblogs.com/zhangjianbin/p/9246338.html
[2]docker 常用命令:https://www.cnblogs.com/zhangjianbin/p/9796548.html
[3]Dockerfile文件详解:https://www.cnblogs.com/panwenbin-logs/p/8007348.html
文章转载自公众号:潜行前行