ITPub博客

首页 > 云计算 > > Docker环境整理

Docker环境整理

作者:浪花小雨滴 时间:2020-05-09 11:42:48 0 删除 编辑

本人docker不是很熟练,当前使用docker时遇到几大痛点问题

docker适用于哪些场景不清晰

1.依赖环境过多时,docker镜像很臃肿

2.自己本地docker迁移时,有依赖问题

3.配置clion,pycharm等可视化开发环境的docker,怎么做到配置一次,能被多个docker环境调用?

4.docker save load import export傻傻分不清楚

5.exec和run的含义不清楚

6.每次重新开启电脑时,相关开发的docker环境需要一个个启动,太繁琐

7.基于旧docker,编译新docker的标准范式不清楚,造成编译的docker很大

接下来对这些问题一一梳理:

章节一:docker的最基本原理

linux kernel用来做什么的?有哪些功能?

「已注销」:漫画赏析:Linux 内核到底长啥样​zhuanlan.zhihu.com图标

总结起来kernel的功能包括:进程调度 内存管理 文件系统

下面为关于kernel中内存管理子系统和调度子系统的说明

linux kernel - 搜索结果 - 知乎​图标

虚拟机和容器?

虚拟机就是在hostos上虚拟出一个os,内部维护了一个oskernel和虚拟了硬件接口,占资源比较重

wiki对linux容器的定义:

LXC (Linux Containers) is an operating-system-level virtualization method for running multiple isolated Linux systems (containers) on a control host using a single Linux kernel.
The Linux kernel provides the cgroups functionality that allows limitation and prioritization of resources (CPU, memory, block I/O, network, etc.) without the need for starting any virtual machines, and also namespace isolation functionality that allows complete isolation of an applications' view of the operating environment, including process trees, networking, user IDs and mounted file systems.

可以看见容器技术的关键-在于LinuxKernel提供了两个构建-cgroups方法和namespace,从而使得容器能够做到使用Host的Linux kernel,而且资源和环境隔离

隔离容器,使其看不到主机的文件系统,进程系统,内存系统的原理?

李想:由浅入深docker系列: (5)资源隔离​zhuanlan.zhihu.com图标李想:由浅入深docker系列: (6)镜像分层​zhuanlan.zhihu.com图标


章节二. docker的应用场景

几个参考链接:

Docker 的应用场景在哪里?​图标Docker 有什么优势?​图标

写的最好的一篇文章

浅析Docker容器的应用场景​图标

发现自己使用容器一直属于上文所说的第一类所说的另类用法。。。

Docker 这九个不同的应用场景,你都用到了吗?​juejin.im

docker的使用范例鉴赏:

姜建林:Docker+PyCharm快速搭建机器学习开发环境​zhuanlan.zhihu.com图标

章节三.创建docker


使用 Dockerfile 定制镜像​yeasy.gitbooks.io

docker环境怎么build更简洁:

在弄清基本原理之后总结了几个原则:

1.将尽量多的RUN尽量整合成一条命令,只生成一层

2.docker build会发生上下文环境拷贝,所以Dockerfile所在目录最好没有其他与工程无关资源,造成镜像过大

3.如果你希望多个容器共享或者持久化数据,可以使用 Docker volume

章节四.将docker容器分享给其他人

  1. 可以使用 docker save <image> | gzip > fileName 将 image 保存为文件,然后拷贝给他人
  2. docker commit -m& docker push

章节五.docker知识及应用扩展

1.kubernetes(K8S),基于容器的集群管理平台(google出品)

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31537575/viewspace-3125190/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-05-16

  • 博文量
    4259
  • 访问量
    40010