Docker 云服务因找不到脚本而停止
Docker cloud services stop with script not found
我一直在尝试使用 docker 云堆栈部署我的应用程序。我已经在本地对此进行了测试,并且还使用 docker-compose 进行了测试,并且它们成功运行。
但是,当我尝试从我的 docker 存储库中使用 docker 云堆栈的注册表部署我的 docker 容器时,它总是以以下代码停止。
[app-1]2018-02-10T06:09:03.316866500Z script not found : /src/dist/index.js
[app-1]2018-02-10T06:09:03.317330400Z Exiting PM2
[app-1]2018-02-10T06:09:03.442521200Z 0 application online, exiting
[app-1]2018-02-10T06:09:03.442686000Z Exiting PM2
我尝试将 src/dist/index.js
设置为 dist/index.js
并尝试了很多其他方法,其中 none 对我有用。
我的 Dockerfile 如下所示。
FROM dooboolab/ubuntu-nodejs-ffmpeg-sharp:latest
WORKDIR /src
COPY package*.json ./
# RUN npm install
RUN npm install --only=production
# If you are building your code for production
# Bundle app source
ADD . /src
EXPOSE 3000
CMD ["pm2-docker", "/dist/index.js"]
我的堆栈文件很简单,如下所示。
应用程序:
环境:
- NODE_ENV=生产
图片:'my_private_image:latest'
端口:
- '3000:3000'
同样,当我在本地计算机上从 docker 存储库构建容器时,my_private_image:latest
工作正常。
我还能尝试什么来解决这个问题?
我找到解决办法了。
这是因为在本地,它引用的是相对路径。
但是,当 运行 来自 docker 堆栈时,它来自绝对路径 运行,因此路径不同。
为了从 docker-stack 成功构建,我必须在图像中设置绝对路径并构建它。
我一直在尝试使用 docker 云堆栈部署我的应用程序。我已经在本地对此进行了测试,并且还使用 docker-compose 进行了测试,并且它们成功运行。
但是,当我尝试从我的 docker 存储库中使用 docker 云堆栈的注册表部署我的 docker 容器时,它总是以以下代码停止。
[app-1]2018-02-10T06:09:03.316866500Z script not found : /src/dist/index.js
[app-1]2018-02-10T06:09:03.317330400Z Exiting PM2
[app-1]2018-02-10T06:09:03.442521200Z 0 application online, exiting
[app-1]2018-02-10T06:09:03.442686000Z Exiting PM2
我尝试将 src/dist/index.js
设置为 dist/index.js
并尝试了很多其他方法,其中 none 对我有用。
我的 Dockerfile 如下所示。
FROM dooboolab/ubuntu-nodejs-ffmpeg-sharp:latest
WORKDIR /src
COPY package*.json ./
# RUN npm install
RUN npm install --only=production
# If you are building your code for production
# Bundle app source
ADD . /src
EXPOSE 3000
CMD ["pm2-docker", "/dist/index.js"]
我的堆栈文件很简单,如下所示。 应用程序: 环境: - NODE_ENV=生产 图片:'my_private_image:latest' 端口: - '3000:3000'
同样,当我在本地计算机上从 docker 存储库构建容器时,my_private_image:latest
工作正常。
我还能尝试什么来解决这个问题?
我找到解决办法了。 这是因为在本地,它引用的是相对路径。 但是,当 运行 来自 docker 堆栈时,它来自绝对路径 运行,因此路径不同。
为了从 docker-stack 成功构建,我必须在图像中设置绝对路径并构建它。