我有一个 Amazon Elastic Beanstalk 应用程序,当前正在运行我的 NODE.JS 应用程序。
我用 kue.js 创建了一些队列,并用 node-schedule 创建了Crons。
由于我有许多命令来运行队列和队列,所以我发现不可能将其放置在当前的nodejs应用中。
我愿意打开一个新的应用程序,唯一的问题是我只能运行一个命令。
我真的不想打开单独的ec2(未连接到我的Elastic Beanstalk服务)来运行所有这些。
该如何解决?
非常感谢您!
答案 0 :(得分:0)
当您要使用EB(Elastic Beanstalk)时,您可以为该应用程序编写一个docker文件,而EB将已经检测到该文件,并询问您这是否是基于docker的项目,其余的将由您来处理,您只需要编写如下所示的入口点命令CMD npm start
之前需要运行的所有脚本
Dockerfile
FROM node:10.13-alpine
# Sets the working directory,and creates the directory as well.
WORKDIR /app
# Install dependencies.
ADD package.json .
RUN npm install
# Copy your source code.
COPY . /app
#Run all your scripts here or simply put them to a scripts.js and run it
RUN node scripts.js
# start app
CMD ["npm", "start"]