无法在Docker容器中运行的Node.js应用程序
我想使用docker-compose在docker容器中运行node.js应用。该应用程序是TiddlyWiki,还有其他容器,并且整个程序都在无所事事的VM中运行,并且使用ansible进行设置,但是对于该问题,我认为没有任何关系。
这是我的docker-compose配置:
wiki:
image: node:12-alpine
container_name: nodejs
restart: always
working_dir: /home/node/app
environment:
NODE_ENV: production
volumes:
- "/srv/docker_wiki/:/home/node/app"
ports:
- "8080:8080"
command: "node node_modules/tiddlywiki/tiddlywiki.js mywiki --listen debug-level=debug"
该应用似乎已启动并正常运行:
vagrant@vserver:~$ sudo docker logs nodejs
Serving on http://127.0.0.1:8080
(press ctrl-C to exit)
syncer-server-filesystem: Dispatching 'save' task: $:/StoryList
但是我无法达到它:
vagrant@vserver:~$ curl http://localhost:8080
curl: (52) Empty reply from server
vagrant@vserver:~$ curl http://localhost:8080
curl: (56) Recv failure: Connection reset by peer
似乎随机出现两个不同的错误消息中的哪个。
[一个有趣的细节:如果我使用curl附带的默认节点图像,那么实际上我可以在运行docker exec -it nodejs /bin/bash
之后从容器本身内部访问应用程序>
我还尝试过使用主机上的其他端口,结果相同。
任何想法这里可能出什么问题吗?
我想使用docker-compose在docker容器中运行node.js应用。该应用程序是TiddlyWiki,还有其他容器,整个程序都在无所事事的VM中运行,并且使用ansible进行设置,但我不......>
回答如下:一个有趣的细节:如果我使用默认的节点图像本身带有卷曲,那么实际上我可以从内部访问应用程序运行docker exec -it nodejs / bin / bash之后的容器本身