javascript - 无法从 Docker 容器访问 Adonis
问题描述
我使用 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"]
我没有发现我的设置有什么问题。
解决方案
serve 命令在项目根目录的 .env 文件中定义的端口上启动 HTTP 服务器。
如果以下解决方案不起作用,您可以在帖子中分享该文件吗?
你应该有这样的东西(注意HOST
必须设置为0.0.0.0
而不是localhost
接受来自外部的连接):
HOST=0.0.0.0
PORT=3333
APP_URL=http://${HOST}:${PORT}
推荐阅读
- javascript - 我们如何使用 react-dnd 和 react-beautiful dnd 的包装来避免 HTML5Backend 错误?
- python - 如何避免在 QInputDialog 上获取特殊字符?
- javascript - React Native - 打开键盘时隐藏固定位置的组件
- sql - 构建只带来只有错误的会话的查询?
- ruby-on-rails - 如何使用 Rails 修复 Shopify 应用程序中的“ActionController::InvalidAuthenticityToken”错误?
- ios - 为什么出现键盘时 scrollrectToVisible 不起作用?
- python - 避免重叠注释
- r - 移除总交易量较低的(交易)日
- django - 模型在 Django 中不可迭代
- hibernate - Quarkus - 指定自己的休眠方言以使用 Vlad Mihalcea 的 Json 休眠扩展