Docker 访问主机&x27;从容器内部调用api
我正在尝试使用docker生成一个build env,我想让它自动生成。我已经编写了一个自定义go二进制文件来处理构建内容,并且我已经构建了一个映像,其中安装了Docker 访问主机&x27;从容器内部调用api,docker,docker-networking,Docker,Docker Networking,我正在尝试使用docker生成一个build env,我想让它自动生成。我已经编写了一个自定义go二进制文件来处理构建内容,并且我已经构建了一个映像,其中安装了go二进制文件、maven和Java8SDK binary执行的步骤包括: 克隆git回购协议 运行构建命令 将构建工件提取到主机。(这还没有完成。) 在运行容器时,我将repo url作为参数传递给二进制文件,它会生成 但问题是我需要这些工件来运行内置的应用程序 我知道我可以使用卷,但我不想使用它们,因为在构建完成后,卷将变成挂起,
go二进制文件
、maven
和Java8SDK
binary执行的步骤包括:
- 克隆git回购协议
- 运行构建命令
- 将构建工件提取到主机。(这还没有完成。)
卷
,但我不想使用它们,因为在构建完成后,卷将变成挂起
,它需要一个作业来删除那些挂起的卷
我想我可以创建一个api来将文件保存到主机(这意味着我必须在主机内运行该api),我的自定义go二进制文件可以将文件发送到api,api将完成保存
但当涉及到从容器内部调用主机时,我遇到了一个问题。我收到连接被拒绝到xx端口的错误
有没有更好的方法,或者我应该改变我的方法 当你可以使用
docker cp CONTAINER:SRC_PATH DEST_PATH
要从容器中取出文件,我仍然认为使用卷是更好的主意。不要使用匿名卷,而是使用命名卷:
docker run -v /local/host/dir:/build/output YOURIMAGE
这允许您从/local/host/dir获取主机上的人工制品
当您可以使用
docker cp CONTAINER:SRC_PATH DEST_PATH
要从容器中取出文件,我仍然认为使用卷是更好的主意。不要使用匿名卷,而是使用命名卷:
docker run -v /local/host/dir:/build/output YOURIMAGE
这允许您从/local/host/dir获取主机上的人工制品
在上找到了答案
答案是使用--addhost
选项运行容器。在上找到答案
使用--addhost
选项运行容器就是答案。如果我有机会通过api实现这一点,我想使用它。我知道我可以使用它,但它不是自动的方式。如果我有机会通过api实现这一点,我想使用它。我知道我可以用这个,但这不是自动的方式。你怎么“打电话给主持人”?另外,如果您发布用于启动容器的命令行也会有所帮助。命令行只是执行我的二进制文件,就是这样,你怎么“调用主机”?另外,如果您发布用于启动容器的命令行也会有所帮助。命令行只是执行我的二进制文件而已