我有一个创建Docker容器的命令,从Docker容器创建],并且我想将端口绑定到主机
exec(`curl --unix-socket /var/run/docker.sock -H "Content-Type: application/json" -d '{ "Image": "strategy_baseline", "ExposedPorts": { "${PORT}/tcp": {} }, "HostConfig": { "Binds": ["strategies:/usr/src/app/strategies"], "NetworkMode": "titan_backend" }, "PortBindings": { "${PORT}/tcp": [{ "HostPort": "${PORT}" }]}, "Env": ["BOTNAME=${BOT_ID}", "PORT=${PORT}", "ASSETS=${ASSETS}"]}' -X POST http:/v1.4/containers/create?name=${BOT_ID}`,
所有变量都在文件中正确定义,因此不存在错误。
按现状,我通过API端点调用此命令,并且在运行docker ps
输出的正确端口上正确创建了容器:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES ab8e28ccd50f strategy_baseline "docker-entrypoint.s…" 2 hours ago Up 2 hours 3009/tcp defaultKeys
Id期望将容器端口指定为
0.0.0.0:3009->3009/tcp
。但是a,这行不通。
我知道我可以通过指定容器的名称来调用该容器,因此从网络中的任何其他容器中我都可以http://container_name:3009/endpoint
但理想情况下,我应该能够:hhtp://vps_ip:3009/endpoint
到目前为止我还不能做到。
非常感谢任何指针或帮助,谢谢!!
我有一个从Docker容器创建docker容器的命令,我想将端口绑定到主机exec(`curl --unix-socket /var/run/docker.sock -H“ Content-Type: application / json“ -d'{...
此修改成功了