看了半天,还是没闹明白两个个基本的问题

2015-10-07 02:37:25 +08:00
 cevincheung

1.关于 Image 和 Container 最根本的区别是什么?

2.怎么创建一个自己的基本镜像
Dockerfile 中指定基于 Ubuntu 创建一个 image ,那这个 ubuntu 这个基本的镜像是谁做的?怎么做的?是安装好一台基本 ubuntu 以后直接打包整个系统么?

3188 次点击
所在节点    Docker
11 条回复
df4VW
2015-10-07 03:20:26 +08:00
1. 玩过 vm 吧,镜像就是你里面装的各种系统,容器就是 vm 自己

2. 讲道理的话一般都是从别的镜像上面改,但是你也可以完全自己从头开始,参考这里 https://docs.docker.com/articles/baseimages/
webjin
2015-10-07 03:26:42 +08:00
i
mage 是构建容器的模板。他只能读。 container 就是一个个实例。跑业务的他区别就是可以写数据
webjin
2015-10-07 03:28:38 +08:00
第一次安装好 docker 里面是没镜像和容器的。。。你要从网上仓库 pull 一个下来。
webjin
2015-10-07 03:31:35 +08:00
然后从一个基本的镜像去生成一个容器实例,往里面装你需要的应用。然后你可以把容器实力转换为镜像模板。镜像模板你可以导出打包为一个压缩文件,方便给其他人或者服务器部署。也可以 push 到你的仓库。
webjin
2015-10-07 03:32:59 +08:00
docker 的仓库概念跟 git 一样。官方的叫 docker hub 你也可以自己搭建私有仓库
webjin
2015-10-07 03:37:19 +08:00
docker 的坑比较大,比如我 run 一个容器然后映射几个端口,然后往里面装了应用跑业务也有数据了,但是后期我想再多映射几个其他端口,就无法实现,那他需要你先把现在的容器实力转换为镜像,再在这个新镜像基础重新 run 出一个容器,然后再映射端口,记得把之前和你现在想增加的端口都写好。要不然重新构建
webjin
2015-10-07 03:41:41 +08:00
很多坑,里面的默认 docker0 桥接网卡无法修改。我想直接使用宿主机同网段 ip.找了好多资料都不行。
c742435
2015-10-07 10:12:23 +08:00
@webjin 我习惯把应用程序的数据文件夹映射到主机上。我的思路是随时可以抛弃容器。还有就是一个容器只装一个应用,所以很少碰到容器跑起来之后再添加端口的情况。不知道你所面临的是什么情况,会有这种后期开端口的需求。
webjin
2015-10-07 14:02:07 +08:00
@c742435 对数据卷是映射到主机上。
daben1990
2015-10-09 10:39:21 +08:00
@webjin 桥接网络,我搞成了,我的默认启动了两个网卡,然后自己在网卡 3 中,使用了桥接网络,就可以了
webjin
2015-10-09 14:20:53 +08:00
@daben1990 启动 2 个网卡,,,然后在网卡 3 中???没明白,请教谢谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/226005

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX