来自 docker 容器的 sailsjs 应用程序中的 ReferenceError
ReferenceError in sailsjs application from docker container
我正在开发 sails 应用程序在我的应用程序中,我使用了 mysql 和 mongo 适配器来连接不同的数据库。这两个数据库都托管在互联网上的某个地方。应用程序在我的本地环境中运行良好。将项目添加到 docker 容器后,我遇到了问题。我能够生成 docker 图像和 运行 docker 容器。当我调用不存在数据库连接的简单路由器时,它工作正常,但是当我调用 Testcontroller 时,它是来自 mongodb 的 return 数据。它给我 ReferenceError: Test is not define.
这里 Test
是 mongodb 的实体。
Docker文件:
FROM node:latest
ENV NODE_ENV production
WORKDIR /usr/src/app
COPY ["package.json", "./"]
RUN npm install --verbose --force && mv node_modules ../
COPY . .
EXPOSE 80
CMD npm start
测试控制器
/**
* TestController
* @description :: Server-side actions for handling incoming requests.
*
* @help :: See https://sailsjs.com/docs/concepts/actions
*/
module.exports = {
index: async function(req, res) {
var data = await Test.find(); // Here I am getting error Test is not define.
res.json(data);
}
};
Routes.js
'GET /test': {controller:'test', action:'index'}
我发现了问题,我正在将 node_modules 移动到问题所在的上一个目录。
以下配置适合我。
FROM node:latest
ENV NODE_ENV production
WORKDIR /usr/src/app
COPY ["package.json", "./"]
RUN npm install --verbose --force
COPY . .
EXPOSE 80
CMD npm start
我正在开发 sails 应用程序在我的应用程序中,我使用了 mysql 和 mongo 适配器来连接不同的数据库。这两个数据库都托管在互联网上的某个地方。应用程序在我的本地环境中运行良好。将项目添加到 docker 容器后,我遇到了问题。我能够生成 docker 图像和 运行 docker 容器。当我调用不存在数据库连接的简单路由器时,它工作正常,但是当我调用 Testcontroller 时,它是来自 mongodb 的 return 数据。它给我 ReferenceError: Test is not define.
这里 Test
是 mongodb 的实体。
Docker文件:
FROM node:latest
ENV NODE_ENV production
WORKDIR /usr/src/app
COPY ["package.json", "./"]
RUN npm install --verbose --force && mv node_modules ../
COPY . .
EXPOSE 80
CMD npm start
测试控制器
/**
* TestController
* @description :: Server-side actions for handling incoming requests.
*
* @help :: See https://sailsjs.com/docs/concepts/actions
*/
module.exports = {
index: async function(req, res) {
var data = await Test.find(); // Here I am getting error Test is not define.
res.json(data);
}
};
Routes.js
'GET /test': {controller:'test', action:'index'}
我发现了问题,我正在将 node_modules 移动到问题所在的上一个目录。
以下配置适合我。
FROM node:latest
ENV NODE_ENV production
WORKDIR /usr/src/app
COPY ["package.json", "./"]
RUN npm install --verbose --force
COPY . .
EXPOSE 80
CMD npm start