我正在以交互方式运行 docker 容器:
sudo docker run --rm -t -i CONTAINER_NAME bash
Run Code Online (Sandbox Code Playgroud)
我需要在使用后清除容器实例。由于 tty 丢失,容器也没有任何意义。当会话从容器端关闭(在 bash 中退出)时,一切正常,但如果我的 ssh 会话与主机断开连接,容器保持运行(显示在 docker ps 中)。这也可以通过在 tmux 窗口中打开容器然后杀死一个窗口来重现。
如果附加到 tty 的主机进程(ssh 会话或 tmux)终止,有没有办法让 docker 停止容器?
我正在尝试对我的应用程序的 .text 段使用大页面来减少 TLB 未命中。我成功地将我的应用程序与 libhugetlbfs 支持重新链接,并且主可执行文件的 .text 段现在正在加载到大页面支持的内存中。
然而,应用程序的主要代码库是由几个共享库构成的,所以我希望这些库也有大页面的支持。简单地将 .so 与与主应用程序相同的选项链接起来并设置 env 参数不会导致 .so .text 段出现在大页面上。
有什么办法可以将 .so 加载到大页面中?我可以对我的应用程序进行静态链接,但它会使构建复杂化。