创建 docker 镜像时为了防止结束,运行 sleep infinity 和 tail -f /dev/null 哪个更好 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
movq

创建 docker 镜像时为了防止结束,运行 sleep infinity 和 tail -f /dev/null 哪个更好

  •  
  •   movq 2025 年 12 月 22 日 1912 次点击
    这是一个创建于 119 天前的主题,其中的信息可能已经有所发展或是发生改变。
    5 条回复    2025-12-22 22:26:15 +08:00
    guanzhangzhang
        1
    guanzhangzhang  
       2025 年 12 月 22 日
    挂载下/pause 二进制进去执行,不吃 cpu 。如果是为了运行开源项目的 daemon 进程,找下它的--no-daemon 选项成为 pid 为 1 的进程
    pckillers
        2
    pckillers  
       2025 年 12 月 22 日
    pid=1 的进程可以自动守护重启。设置给空转有点奢侈了。
    liyanggyang
        3
    liyanggyang  
       2025 年 12 月 22 日
    sleep infinity 专门为休眠设计的,语义清晰,但是 docker 不太友好,因为某些基础镜像(特别是 Alpine )的 busybox sleep 不支持 infinity 参数。

    更推荐使用 init 系统或 supervisor 管理进程。

    FROM alpine:latest
    RUN apk add --no-cache tini
    ENTRYPOINT ["/sbin/tini", "--"]
    CMD ["sh", "-c", "trap 'exit 0' TERM INT; while true; do sleep 1; done"]
    julyclyde
        4
    julyclyde  
       2025 年 12 月 22 日   1
    应该把实际干活的进程作为 1 号
    nuII
        5
    nuII  
       2025 年 12 月 22 日
    如果你的镜像是为了运行某个程序,直接 cmd 里写这个程序的启动命令就行了,pid=1 ,容器的生命周期由进程状态决定,更好管理和发现异常,容器停了说明程序也停了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1640 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 40ms UTC 16:37 PVG 00:37 LAX 09:37 JFK 12:37
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86