如何通过链接在docker容器之间共享java包?

如何通过链接在docker容器之间共享java包?,java,docker,package,containers,Java,Docker,Package,Containers,我是Docker的新手,不太了解容器之间的“链接”是如何工作的。 我用一些包编写了一个小java程序,我希望每个包在不同的容器上运行。 我希望包通过链接找到彼此并相互通信。 目标是,当我在主容器中执行main类时,该类将在其他容器中找到所有其他包并可以使用它们。 当我使用卷时,它可以正常工作,但我想知道我是否可以只使用链接和端口,而不必使用卷 我认为这是一个非常愚蠢的问题,但我读了这里的所有内容:但仍然不明白它到底是如何工作的 有人能帮我一下吗?包,特别是类是JVM内部的Java构造。就Dock

我是Docker的新手,不太了解容器之间的“链接”是如何工作的。 我用一些包编写了一个小java程序,我希望每个包在不同的容器上运行。 我希望包通过链接找到彼此并相互通信。 目标是,当我在主容器中执行main类时,该类将在其他容器中找到所有其他包并可以使用它们。 当我使用卷时,它可以正常工作,但我想知道我是否可以只使用链接和端口,而不必使用卷

我认为这是一个非常愚蠢的问题,但我读了这里的所有内容:但仍然不明白它到底是如何工作的


有人能帮我一下吗?

包,特别是类是JVM内部的Java构造。就Docker而言,JVM只是另一个Linux进程,所以将容器链接在一起更类似于在同一台服务器上运行两个Java程序。因此,如果我仍然希望在不同的容器上运行每个包,并且希望它们能够协同工作,那么我必须使用数据卷。更明智的做法是使用Maven存储库共享JAR,然后分别构建和运行每个容器。例如,请参见:非常感谢!我对Maven不太了解,但我会这样尝试。因此,请明确说明:链接可以连接两个服务,只要它们是可以单独运行的服务,例如数据库和使用数据库中数据的服务。因此,当我将它们链接在一起时,一个服务可以从另一个服务获取数据。但是我不能接受一个服务,把它一分为二,然后在一个容器中每运行一半,然后通过链接将它们连接起来。是的,这就是它的大小。链接还提供了一些额外的好处,如设置环境变量和更改主机文件,以便链接到的容器可以被其他容器轻松找到(端口号和IP地址)