英文:
connect 2 containers, call python container and execute script.py from golang container
问题
我正在使用两个Docker容器来开发一个Web应用程序。在我的Golang Docker容器中,我有我的Web服务器,在提交表单后,我想在我的Python容器中处理输入。我的第一个想法是使用Golang:
exec.Command('python3', 'script.py', 'args')
但是我不知道如何调用Python容器,就像使用它的Bash终端而不是Golang的终端一样。有什么想法吗?
英文:
I am using two docker containers to develop a web app. Inside my golang docker container i have my web server, after submiting a form I want to process the inputs in my Python container. My first idea is to use golang:
exec.Command('python3', 'script.py', 'args')
But I don't know how to call the Python container, like using its bash terminal instead of the golang one. Any ideas?
答案1
得分: 3
根据本质,Docker容器是隔离的,你不能直接在一个容器中执行另一个容器的代码。
在微服务的理念中,你更倾向于在Python容器中暴露一个API,并从Go容器中调用该API。
另一方面,从主机上,你可以使用docker exec <command>
在Python容器内执行一个"一次性命令"。
英文:
by essence, the docker containers are isolated and you cannot directly execute code from one in another.
In the microservice philosophy, you would more preferably expose and API in the python container and call this API from the go container.
On the other hand, from the host, you can execute a one shot command
inside your python container by using docker exec <command>
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论