挂载路径时,Docker容器运行立即退出

时间:2020-02-25 09:06:58

标签: docker docker-for-windows

我正在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 ERR!代码ENOENT npm ERR! syscall打开npm ERR!路径 /usr/src/app/package.json npm错误! errno -2 npm错误! enoent ENOENT:否 这样的文件或目录,打开'/usr/src/app/package.json'npm ERR! enoent这与npm无法找到文件有关。 npm ERR! 先天

npm ERR!此运行的完整日志可以在以下位置找到:npm ERR!
/root/.npm/_logs/2020-02-26T19_02_33_143Z-debug.log

我正在Windows主机上运行这些命令。我在哪里找到/root/.npm/日志文件夹?

0 个答案:

没有答案