无法通过链接访问在dokku中运行的node.js服务器

时间:2018-11-13 10:22:36

标签: node.js digital-ocean dokku

我有一个node.js服务器在端口8080上的dokku中运行,但是我无法通过打开链接http://my-digital-ocean-ip:8080来访问它。我检查了应用程序的日志,服务器已成功在端口8080上启动:here is a screenshot of logs

我正在使用graphql-yoga运行服务器,但我认为这是Digital Ocean的问题,可能与配置或主机有关,因为如果我在本地计算机上运行该应用程序,它将在{ {3}}(默认端口为4000)。

此外,我还有另一个dokku应用程序,该应用程序在端口4646上的同一Digital Ocean Droplet上运行,并且运行良好,但是它不是node.js应用程序,而是http://localhost:4000服务。我试图只运行其中的一个dokku应用程序,但是却没有效果。

此外,我尝试将8080端口更改为4000、80,但也无济于事。

这是我的index.js的代码:

require('dotenv').config();

const { GraphQLServer } = require('graphql-yoga');

const { prisma } = require('./generated');
const { resolvers } = require('./resolvers');


const server = new GraphQLServer({
  typeDefs: 'src/schema.graphql',
  resolvers: resolvers,
  context: {
    prisma: prisma,
  },
  resolverValidationOptions: {
    requireResolversForResolveType: false,
  },
});


server.start(({ port }) => console.log(`GraphQL server is running on the port ${port}`));

这是Dockerfile的代码:

FROM node:10.13.0

WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .

EXPOSE 8080

CMD [ "npm", "start" ]

这是我的仓库-prisma

0 个答案:

没有答案