嗨。首先,我知道这可能是某种重复。但是我不满意的答案对我没有帮助。这是我的情况。
我想使用GCP(GKE)创建我的docker映像的部署。我使用gke ui(在工作负载菜单中)创建它。我的映像是由docker文件创建的,您可以在此处查看:
FROM keymetrics/pm2:latest-alpine
COPY dist dist/
COPY package.json .
COPY pm2.json .
RUN npm install --production
RUN ls -al -R
CMD [ "pm2", "start", "pm2.json", "-p", "3000:80" ]
我已经在本地启动此映像,并且它可以正常工作。在这里您可以看到它:
sudo docker run booknotes-app
[PM2] Spawning PM2 daemon with pm2_home=/root/.pm2
[PM2] PM2 Successfully daemonized
[PM2][WARN] Applications booknotes-app not running, starting...
[PM2] App [booknotes-app] launched (1 instances)
┌───────────────┬────┬─────────┬──────┬─────┬────────┬─────────┬────────┬─────┬───────────┬──────┬──────────┐
│ App name │ id │ version │ mode │ pid │ status │ restart │ uptime │ cpu │ mem │ user │ watching │
├───────────────┼────┼─────────┼──────┼─────┼────────┼─────────┼────────┼─────┼───────────┼──────┼──────────┤
│ booknotes-app │ 0 │ N/A │ fork │ 24 │ online │ 0 │ 0s │ 0% │ 22.9 MB │ root │ disabled │
└───────────────┴────┴─────────┴──────┴─────┴────────┴─────────┴────────┴─────┴───────────┴──────┴──────────┘
Use `pm2 show <id|name>` to get more details about an app
您还可以看到我的广告连播列表:
您还可以看到我被压碎的豆荚的日志:
kubectl logs booknotes-back-end-7f6766868f-5c92l
[PM2] Spawning PM2 daemon with pm2_home=/root/.pm2
[PM2] PM2 Successfully daemonized
[PM2][WARN] Applications booknotes-app not running, starting...
[PM2] App [booknotes-app] launched (1 instances)
┌───────────────┬────┬─────────┬──────┬─────┬────────┬─────────┬────────┬─────┬──────────┬──────┬──────────┐
│ App name │ id │ version │ mode │ pid │ status │ restart │ uptime │ cpu │ mem │ user │ watching │
├───────────────┼────┼─────────┼──────┼─────┼────────┼─────────┼────────┼─────┼──────────┼──────┼──────────┤
│ booknotes-app │ 0 │ N/A │ fork │ 23 │ online │ 0 │ 0s │ 0% │ 3.2 MB │ root │ disabled │
└───────────────┴────┴─────────┴──────┴─────┴────────┴─────────┴────────┴─────┴──────────┴──────┴──────────┘
Use `pm2 show <id|name>` to get more details about an app
如您所见,它的外观与本地外观相同。我还尝试使用此响应中的解决方案:
I got Pod errors: CrashLoopBackOff from kubernetes
我添加了tty: true
,但并没有太大帮助。如果您需要其他信息,请告诉我
答案 0 :(得分:1)
CMD [ "pm2", "start", "pm2.json", "-p", "3000:80" ] --> CMD [ "pm2-runtime", "start", "pm2.json"]
问题出在这一行。