V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
vemier
V2EX  ›  Docker

求教, docker 能只关闭容器内的应用吗

  •  1
     
  •   vemier · Mar 4, 2020 · 3938 views
    This topic created in 2247 days ago, the information mentioned may be changed or developed.

    用 docker 起了一个 elasticsearch,结果这个 es 的 translog 文件坏了,修复需要先停止 es。

    这个 es 的 pid 是 1,kill 后容器也停了。

    有办法只停止 es 不退出容器吗

    6 replies    2020-03-04 17:17:19 +08:00
    julyclyde
        1
    julyclyde  
       Mar 4, 2020
    这不是要解决其他社会制度不存在的问题么
    SkyYu822
        2
    SkyYu822  
       Mar 4, 2020   ❤️ 1
    pid namespace 本来就是容器的一个核心, 你的 es 进程在这个 namespace 里相当于 init 进程
    xupefei
        3
    xupefei  
       Mar 4, 2020 via iPhone
    自己改 dockerfile,用一个死循环脚本运行 es
    ETiV
        4
    ETiV  
       Mar 4, 2020 via iPhone
    docker cp,可以复制文件进、出容器,非运行中的也可以
    所谓的“修复”,应该就是修改配置文件吧
    vemier
        5
    vemier  
    OP
       Mar 4, 2020
    @ETiV 需要使用 es 目录下的 bin/elasticsearch-shard 工具,会提示先停止 es 才能修复
    mikeguan
        6
    mikeguan  
       Mar 4, 2020 via Android
    docker 使用 systemd 守护进程,应该就可以单独停服务了,也就是让 pid 为 1 的进程是 systemd 守护进程
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1193 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 23:19 · PVG 07:19 · LAX 16:19 · JFK 19:19
    ♥ Do have faith in what you're doing.