我使用Docker包含我的Adonis应用程序。构建成功,但是当我访问该应用程序时,我得到了ERR_SOCKET_NOT_CONNECTED
或ERR_CONNECTION_RESET
。
我的docker compose包含adonis和数据库。以前,我为我的expressjs应用使用与此类似的设置,并且没有问题。
adonis .env仍然是标准的修改版本。
这是我的设置:
# docker-compose.yml
version: '3'
services:
adonis:
build: ./adonis
volumes:
- ./adonis/app:/usr/src/app
networks:
- backend
links:
- database
ports:
- "3333:3333"
database:
image: mysql:5.7
ports:
- 33060:3306
networks:
- backend
environment:
MYSQL_USER: "user"
MYSQL_PASSWORD: "root"
MYSQL_ROOT_PASSWORD: "root"
networks:
backend:
driver: bridge
# adonis/Dockerfile
FROM node:12-alpine
RUN npm i -g @adonisjs/cli
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY ./app/. .
RUN npm install
EXPOSE 3333
CMD ["adonis", "serve", "--dev"]
我没有发现我的设置有什么问题。
答案 0 :(得分:2)
serve命令在项目根目录中.env文件内定义的端口上启动HTTP服务器。
如果以下解决方法无效,可以在帖子中共享该文件吗?
您应该有类似以下内容(请注意,HOST
必须设置为0.0.0.0
而不是localhost
才能接受来自外部的连接):
HOST=0.0.0.0
PORT=3333
APP_URL=http://${HOST}:${PORT}