【发布时间】:2018-05-04 11:17:41
【问题描述】:
我有 1 个节点服务。
我想在两个不同的容器上运行同一服务的两个不同实例。
我正在使用以下 docker 命令执行此操作,
docker run -p 9003:9003 --network ${NETWORK} --name database-service --restart always -m 1024M --memory-swap -1 -itd ${ORGANISATION}/${SERVICE_NAME}:${VERSION}
docker run -p 9113:9113 --network ${NETWORK} --name database-service-poc --restart always -m 1024M --memory-swap -1 -itd ${ORGANISATION}/${SERVICE_NAME}:${VERSION}
当我这样做时,我的第一个 docker 容器运行良好
但第二个容器以某种方式仅占用 9003,尽管我通过了 9113,请参见下面的屏幕截图:
仅供参考,
在节点服务中,我使用以下代码获取动态端口,即使用上述 docker 命令传递的端口
app.listen(app.get('port'), function () {
logging.info("Application is running on port: %d in %s mode", app.get('port'), app.get('env'));
logging.info("process.env.PORT ",process.env.PORT); //In both the docker container it prints 9003
});
【问题讨论】:
-
你可能对 kubernetes 感兴趣。
标签: node.js docker docker-compose dockerfile docker-machine