gpt4 book ai didi

docker - Linux + Docker-如何从Docker容器中运行主机的应用程序?

转载 作者:行者123 更新时间:2023-12-02 21:22:03 25 4
gpt4 key购买 nike

我想知道Docker是否可以运行安装在容器中主机中的应用程序,这样我就不需要在每个镜像上安装该应用程序,这会浪费硬盘空间。

我知道Linux是不同的,因为它在本地需要依赖项和程序包,但是我想知道是否有可能像Windows VM中那样使用它。
在Windows Hyper-V中,我是通过与容器共享包含便携式应用程序的网络文件夹并在Windows VM内部运行应用程序来实现的。
谢谢。

最佳答案

您可以将主机上包含可执行文件的目录链接到容器中。然后可以在容器中访问它。为此,可以使用VOLUMES -- Mount a host directory as a data volume并将主机目录(此处:/ tmp / foo)安装到容器(此处:/ foo)中,并在容器的位置/foo/foo.sh中执行名为foo.sh的脚本:

mkdir /tmp/foo
echo -e "#\!/bin/sh\n\necho foo" > /tmp/foo/foo.sh

docker run --rm -v /tmp/foo:/foo alpine sh /foo/foo.sh
=> foo

同样,您可以将主机中的二进制文件添加到容器中...但是我不认为这样做是有意的,也不应该使用它,因为容器应作为独立的独立“轻量级VM”工作。您向主机添加了不必要的依赖关系,这似乎不是一个很好的解决方案。

关于docker - Linux + Docker-如何从Docker容器中运行主机的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44131837/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com