docker - 安装路径时 Docker 容器运行立即退出
问题描述
我在 Windows 10 上运行 docker。当我在没有-v
标志的情况下运行此命令以将主机驱动器和文件路径挂载到容器路径时,容器运行正常并且我可以连接到它。但是,当我提供标志来挂载路径时,容器会立即退出。这是我的命令,运行没有任何错误
docker container run -v c:/container-fs:/usr/src/app --publish 8001:8080 --detach --name bboard-ubuntu bulletinboard:Ubuntu
当我运行命令时docker container ls --all
,我看到命名的容器bboard-ubuntu
在启动后几乎立即退出。
尝试使用命令执行到容器中时docker exec -it bboard-ubuntu /bin/bash
,我收到如下错误消息:
来自守护程序的错误响应:容器 26a2d3361dfc0c890xxxxxxxxxxxxxxx97be532ab6e8771652e5b 未运行
当我删除挂载标志并像下面这样运行它时,没有问题,我可以exec
进入容器文件系统。
docker container run --publish 8001:8080 --detach --name bboard-ubuntu bulletinboard:Ubuntu
如何跟踪和解决由提供挂载标志引起的问题?
编辑 这是 Dockerfile
FROM ubuntu:18.04
WORKDIR /usr/src/app
COPY package.json .
# replace shell with bash so we can source files
RUN rm /bin/sh && ln -s /bin/bash /bin/sh
RUN apt-get update \
&& apt-get install -y curl \
&& apt-get -y autoclean
RUN apt-get install -y apt-utils
RUN apt-get -y install nano
# nvm environment variables
ENV NVM_DIR /usr/local/nvm
ENV NODE_VERSION 13.9.0
# install nvm
# https://github.com/creationix/nvm#install-script
RUN curl --silent -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.2/install.sh | bash
# install node and npm
RUN source $NVM_DIR/nvm.sh \
&& nvm install $NODE_VERSION \
&& nvm alias default $NODE_VERSION \
&& nvm use default
# add node and npm to path so the commands are available
ENV NODE_PATH $NVM_DIR/v$NODE_VERSION/lib/node_modules
ENV PATH $NVM_DIR/versions/node/v$NODE_VERSION/bin:$PATH
# confirm installation
RUN node -v
RUN npm -v
RUN npm install
EXPOSE 8080
CMD [ "npm", "start" ]
COPY . .
这是删除分离后的错误
npm 错误!代码 ENOENT npm 错误!系统调用打开 npm 错误!路径 /usr/src/app/package.json npm 错误!errno -2 npm 错误!enoent ENOENT:没有这样的文件或目录,打开'/usr/src/app/package.json' npm ERR!enoent 这与 npm 找不到文件有关。npm 错误!恩恩
npm 错误!可以在以下位置找到此运行的完整日志:npm ERR!
/root/.npm/_logs/2020-02-26T19_02_33_143Z-debug.log
我在 Windows 主机上运行这些命令。在哪里可以找到/root/.npm/
日志文件夹?
解决方案
推荐阅读
- c# - 如何从xamarin android中的图库中获取选定的图像名称
- node.js - 使用不同的环境运行测试。取决于 package.json 中命令的变量
- python - 在 Pandas 数据框中有效地删除行
- python-3.x - 我正在尝试在 span_id 中提取文本,但使用 python beautifulsoup 得到空白输出
- java - Java 中的电子邮件服务引发“内存不足”错误
- here-api - 关于 Geocode API 的一个参数
- c# - 需要帮助将此方法(使用 string.Join() 和 LINQ)变成通用方法
- python - 需要帮助在 Python 中创建 txt 日志文件
- snmp - 如何在 SET 命令中指定八位字节字符串?
- reactjs - 如何修复组件显示重叠