首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

什么说编写 Dockerfile 的时候一般继承 debian,而不是 centos, Linux 入门的时候都建议采用 centos?

  •  
  •   daijinming · 5 天前 · 2632 次点击

    Github 上很多的示例 Dockerfile 都是 FROM debian,而不是 FROM centos,网上还有人建议编写 Dockerfile 最好是 FROM debian,大侠你怎么说

    38 回复  |  直到 2018-09-15 08:06:24 +08:00
        1
    Muninn   5 天前
    centos 现在主要是偏传统企业的,为了兼容 redhat 可以来回切。

    互联网公司大多喜欢 debian 呀。激进一点的用 ubuntu server。

    我感觉应该就是文化问题。
        2
    7654   5 天前
    debian 及其衍生系统多,覆盖面广吧
    二进制包提供 deb 格式也是最多的
        3
    leconio   5 天前 via Android
    小机器用过几次 debian,程序不断重启,换了 centos 就没事儿了。之后就再没用过 debian 当生产机。
        4
    iwtbauh   5 天前 via Android
    from 万年不更新的 CentOS 然后发现 lib 太旧还得自己再编译 lib 进去吗。
        5
    ETiV   5 天前 via iPhone
    apt 上的包新一些
    debian docker 镜像也小

    但其实问题不大,
    不是还有好多 FROM alpine 的吗
        6
    iwtbauh   5 天前 via Android
    @leconio 服务器全部用 Debian testing 的路过
        7
    whileFalse   5 天前
    我以前 from ubuntu,现在 from alpine。能跑就行怕啥。
        8
    gui   5 天前
    我也用 alpine,很轻
        9
    wenzhoou   5 天前 via Android
    我也喜欢 alpine。希望 alpine 上东西越来越多。
        10
    Cabana   5 天前
    alpine 才几十 M
        11
    Cabana   5 天前
    @wenzhoou 你这不是自相矛盾嘛,alpine 就是应为没乱七八糟的东西才这么小的
        12
    zhengxiaowai   5 天前
    这个根据实际情况来,ubuntu、debain、centos 都是可以,取决于熟悉哪个

    有时候也会用 alpine,但是有些程序跑在 alpine 上性能有损耗,所以要测一测看看
        13
    feverzsj   5 天前
    难道不应该 FROM scratch 吗?
        14
    yanaraika   5 天前
    debian 是目前最好的选择。centos 包太旧,alpine 的 musl libc 比起 glibc 还是会有各种各样的问题,而且默认没有 ca-certificates
        15
    kernel   5 天前
    刚入门 linux 服务器我也用 centos,后来发现这不是和自已过不去嘛,就切 debian 了
    至于和 debian 比稳定性那是玄学
        16
    passerbytiny   5 天前
    debian 最小(换句话说不适合日常使用)。

    镜像的各层,能小就小,这是编写 Dockerfile 时候的第一要求。
        17
    zhzer   5 天前
    debian 小
    Docker 的宗旨就是方便,那肯定选最小且够用的
        18
    my101du   5 天前
    用过 alpine 的 node 镜像,后来发现要增加一个图片处理有关的功能,编译了 c++等一大堆库后,体积和 debian 的没设么差别。

    还有 alpine php7 的镜像,新增扩展也是运行 apk 命令时各种出问题。

    体积是小了,但是适用于不怎么需要定制的情况。 不差那点磁盘和网络速度的话,还是用完整一点的 linux 吧。
        19
    pony279   5 天前
    debian 的 fork 特别多,说明 debian 可定制性很强,而且本身也比较小,软件生态很全(比起 alpine )

    其实初学者是比较推荐 ubuntu 的(大概是因为 ubuntu 用户多吧,其实我也不清楚当年的原因了)

    ubuntu 基于 debian testing 自己做了一些事情,具体是啥我也不清楚,所以我更倾向于 debian,对我来说更加简单可控
        20
    likuku   5 天前
    debian 小巧不带 XWindow 等一大堆东西,快捷方便。

    其次,docker 原本开发团队就是在 Ubuntu 环境开发测试,第一优先平台也是 Ubuntu,
    作为 Ubuntu 的基础,debian 用来制作 image 也是很自然的。

    centos/redhat 嘛...国内 /简体中文 大环境下,因为大规模进入中国大众 /大中学生 视野早,
    当年多少小白入门时以为 redhat 就是 linux 的全部了好嘛~

    那么,redhat/centos 的各种非官方简体中文资料占比就是最大,所谓非官方 /民间社区 就相对更早得以发展壮大,

    民间技术支持基础就更大,既然大家相对更熟悉它,那么之后爱好者们进入工作,进入职业社会,那么很大几率就是沿用熟悉的 redhat/centos,
    用久了,自然换起来就很麻烦...尤其已经跑了好多年的业务生产系统。
        21
    likuku   5 天前
    @my101du [体积是小了,但是适用于不怎么需要定制的情况。 不差那点磁盘和网络速度的话,还是用完整一点的 linux 吧]

    那么重型的用法,那是把 docker 当虚拟机使唤了...
        22
    julyclyde   5 天前
    容器用 alpine 的比较多; debian 的很少见
    推荐 centos 因为不思考就推荐了
        23
    presoul   5 天前 via Android
    @feverzsj 用这个没 shell 吧 我记得好像...
        24
    newtype0092   5 天前
    @Cabana #11 人家明显是说基于 alpine 的第三方镜像越多越好啊。。。
        25
    wenzhoou   5 天前 via Android
    @Cabana 我说的意思是 alpine 不变的前提下,提供的 pkg 越来越多。解决类似 18 楼提出的问题。
        26
    zbinlin   5 天前
    centos 开箱默认的安全策略限制地比较严格,所以入门的风险小点。但 docker 是跑在宿主机上了,也就无所谓了。
        27
    codehz   5 天前
    我都是直接写 FROM base/archlinux 来着的(
        28
    feverzsj   5 天前
    @presoul 容器要 shell 干什么
        29
    lrh3321   5 天前
    alpine 和 debian 的占大多数吧,一个体积小,debian 系的东西用的人多。反正我们的服务器是 debian 的。
        30
    iwishing   5 天前
    应该追求 FROM scrach 吧?
        31
    eoo   5 天前
    一直 debian
        32
    realpg   5 天前
    因为 写那些建议的 都是些 RH 传承的旧思维的人
        33
    guyeu   5 天前
    看了一串 没有 arch 吗
        34
    Taojun0714   5 天前
    互联网公司当然用 debian 居多了,更新及时,安装包多,比 ubuntu 干净
        35
    xuanbg   5 天前
    没有用乌班图的吗?
        36
    Sharuru   5 天前
    一般现在比较流行 Alpine
    较多的还是 Debian 和 Ubuntu,没记错,Ubuntu 甚至专门准备了一个给 Docker 用的 base image

    至于 CentOS,也就国内喜欢鼓吹稳定。具体原因不再赘述。
        37
    msg7086   4 天前
    CentOS 是一个企业级操作系统。如果你打算以后加入大公司,成为运维团队的一员,协助维护几十几百台服务器的,以及后期可能会转去 RHEL 的,这样的选择很好。
    自己个人使用为什么要用 CentOS 呢,你每个月会花多少个小时来打理你的系统呢,会自己写脚本然后管理自己编译打包的软件包吗,会跟着 RHEL 的安全更新公告然后半夜 3 点起来扒 0day 更新吗?如果不会,那么为什么不去用 Debian 呢。
        38
    msg7086   4 天前
    @pony279 Ubuntu 是基于 Debian sid,也就是 unstable 分支,不是 testing 哦。

    @likuku docker 还是比虚拟机轻些。我自己就是把 docker 当 vagrant 用,Dockerfile 写好构造命令以后拿来编译软件包。Debian 本身自己就有这个计划,把软件包放进 docker 编译,可以保证编译过程能到处 reproduce,我是参考了他们的做法。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2142 人在线   最高记录 3762   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.1 · 20ms · UTC 14:38 · PVG 22:38 · LAX 07:38 · JFK 10:38
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1