Jor*_*dan 4 unix crash exit docker
答案只是将容器设置为在崩溃时重新启动。在开发中,我使用 nodemon 来防止进程在崩溃时退出 - 所以我认为进程崩溃不会导致容器退出。我的错。进程崩溃实际上会导致容器在使用node和不使用时退出nodemon。
{
"scripts": {
"development:service": "nodemon ./service/server.js",
"production:service": "node ./service/server.js"
}
}
Run Code Online (Sandbox Code Playgroud)
当容器内的进程崩溃时,如何重新启动 docker 容器?
最好的方法是--autorestart ON_FAILURE为容器设置,然后在内部进程崩溃时使容器崩溃?如果是这样,当其中一个进程崩溃时,如何强制容器崩溃?
我正在使用图像node:10.15.3。
有用的链接:如果容器本身崩溃,如何使容器重新启动
FROM node:10.15.3
ENV NODE_ENV development
# Create application directory.
RUN mkdir -p /src
WORKDIR /src
# Install app dependencies and build.
ADD . /src
RUN yarn install --force
RUN ["chmod", "+x", "./run.sh"]
CMD [ "./run.sh" ]
Run Code Online (Sandbox Code Playgroud)
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
user 13 0.0 0.1 17952 2840 ? S 15:09 0:00 bash ./install.sh
user 72 0.5 3.2 889668 66728 ? Sl 15:09 0:00 /usr/local/bin/node /opt/yarn-v1.13.0/bin/yarn.js start
user 97 2.4 3.2 919992 65748 ? Sl 15:09 0:01 /usr/local/bin/node ./service/server.js
Run Code Online (Sandbox Code Playgroud)
您可以将 --restart 标志用于 docker run 命令 https://docs.docker.com/engine/reference/commandline/run/#restart-policies---restart
例子:
docker run --restart=on-failure my-image-name
或者,如果您正在使用 docker-compose 那么您restart: on-failure的服务
https://docs.docker.com/compose/compose-file/#restart
| 归档时间: |
|
| 查看次数: |
6561 次 |
| 最近记录: |