我在将机器上的目录安装到Docker容器时遇到了一些麻烦。我想挂载一个包含运行节点服务器所必需的文件的目录。到目前为止,我已经成功地使用下面的Dockerfile在浏览器中运行和访问我的服务器:
# Use an ubuntu base image
FROM ubuntu:14.04
# Install Node.js and npm (this will install the latest version for ubuntu)
RUN apt-get update
RUN apt-get -y install curl
RUN curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -
RUN apt-get -y install nodejs
RUN apt-get -y install git
# Bundle app source (note: all of my configuration files/folders are in the current directory along with the Dockerfile)
COPY . /src
Install app dependencies
#WORKDIR /src
RUN npm install
RUN npm install -g bower
RUN bower install --allow-root
RUN npm install -g grunt
RUN npm install -g grunt-cli
#What port to expose?
EXPOSE 1234
#Run grunt on container start
CMD grunt
这些命令:
docker build -t test/test .
docker run -p 1234:1234 -d test/test
但是,我认为我希望配置文件和诸如此类的内容保持不变,并考虑通过将目录(包含文件和Dockerfile)作为卷安装来实现。我在StackOverflow上使用了其他解决方案来获取此命令:
docker run -p 1234:1234 -v //c/Users/username/directory:/src -d test/test
我的节点服务器似乎启动正常(日志中没有错误),但这需要花费更长的时间,当我尝试在浏览器中访问我的网页时,我只是得到一个空白页。
我做错了什么吗?
编辑:我让我的服务器运行 - 似乎在我的配置中出现了一个奇怪的错误。但是,当我从主机安装卷时,我的服务器启动仍然需要很长时间(大约一两分钟)。有没有人对这是为什么有一些了解?