1.关于 Image 和 Container 最根本的区别是什么?
2.怎么创建一个自己的基本镜像?
Dockerfile 中指定基于 Ubuntu 创建一个 image ,那这个 ubuntu 这个基本的镜像是谁做的?怎么做的?是安装好一台基本 ubuntu 以后直接打包整个系统么?
1
df4VW 2015-10-07 03:20:26 +08:00
1. 玩过 vm 吧,镜像就是你里面装的各种系统,容器就是 vm 自己
2. 讲道理的话一般都是从别的镜像上面改,但是你也可以完全自己从头开始,参考这里 https://docs.docker.com/articles/baseimages/ |
2
webjin 2015-10-07 03:26:42 +08:00 via Android
i
mage 是构建容器的模板。他只能读。 container 就是一个个实例。跑业务的他区别就是可以写数据 |
3
webjin 2015-10-07 03:28:38 +08:00 via Android
第一次安装好 docker 里面是没镜像和容器的。。。你要从网上仓库 pull 一个下来。
|
4
webjin 2015-10-07 03:31:35 +08:00 via Android
然后从一个基本的镜像去生成一个容器实例,往里面装你需要的应用。然后你可以把容器实力转换为镜像模板。镜像模板你可以导出打包为一个压缩文件,方便给其他人或者服务器部署。也可以 push 到你的仓库。
|
5
webjin 2015-10-07 03:32:59 +08:00 via Android
docker 的仓库概念跟 git 一样。官方的叫 docker hub 你也可以自己搭建私有仓库
|
6
webjin 2015-10-07 03:37:19 +08:00 via Android
docker 的坑比较大,比如我 run 一个容器然后映射几个端口,然后往里面装了应用跑业务也有数据了,但是后期我想再多映射几个其他端口,就无法实现,那他需要你先把现在的容器实力转换为镜像,再在这个新镜像基础重新 run 出一个容器,然后再映射端口,记得把之前和你现在想增加的端口都写好。要不然重新构建
|
7
webjin 2015-10-07 03:41:41 +08:00 via Android
很多坑,里面的默认 docker0 桥接网卡无法修改。我想直接使用宿主机同网段 ip.找了好多资料都不行。
|