Tag: 文件

运行docker映像失败

我期望成功运行docker镜像,但无法访问和获取权限拒绝错误,如下所示。 #base image FROM selenium/standalone-chrome # Install Node.js RUN sudo apt-get update RUN sudo apt-get install –yes curl RUN curl –silent –location https://deb.nodesource.com/setup_8.x | sudo bash #Define runtime ENTRYPOINT /app/login.test.js 为什么被拒绝的权限呢? PS:我改变了包含Dockerfile和自动化testingJS文件的cd dir ( cd dir )。

使用Dockerfile将UI容器中的'dist'文件夹挂载到NGINX容器

我看到很multithreading提出了使用docker命令回答的类似问题,而不是使用Dockerfile定义。 我有' N '个UI容器运行“ 节点 ”,我需要指向另一个容器运行' nginx '到他们build立的'dist'文件夹: FROM nginx:1.13.7 VOLUME ["factory-ui"] RUN mkdir -p factory-ui COPY /apps/factory-ui/dist /factory-ui 其中/apps/factory-ui/dist位于名为factory-ui的正在运行的容器上,我需要将此文件夹挂载到nginx容器的根目录下。 我看不到如何告诉nginx容器哪个容器来装载每个UI容器内的每个dist文件夹path的卷。 我想我已经过分复杂了,但是我没有看到答案。

为什么Docker Tomcat无法启动?

我正在尝试从Dockerfile构buildTomcat映像。 这是我的Dockerfile的样子: FROM dockerfile/java RUN sudo apt-get update RUN sudo apt-get install tomcat7 EXPOSE 8086 CMD sudo service tomcat7 start && tail -f /var/log/tomcat7/catalina.out. 但是当我从这里build立一个图像并运行图像 $ docker run tomcat7-test 它给出以下内容: 启动tomcat servlet引擎tomcat7 …失败! 我不知道是什么原因造成的问题。 我如何检查这个Docker Tomcat的日志? 任何人都可以告诉我,我应该在Dockerfile中使用哪些命令来运行Tomcat?

用php和docker创buildweb应用程序

我有以下的DOCKERFILE : FROM php RUN apt-get update && apt-get install -y git RUN git clone https://github.com/marcosh/webinthemiddle.git EXPOSE 80 CMD php -S localhost:80 webinthemiddle/index.php 我想用php创build一个非常基本的应用程序。 我使用sudo docker build -t marcosh/webinthemiddle .构build图像sudo docker build -t marcosh/webinthemiddle . 然后我试着运行容器使用 sudo docker run -d -P marcosh/webinthemiddle 要么 sudo docker run -d -P marcosh/webinthemiddle php -S localhost:80 webinthemiddle/index.php 然后,我检查与sudo docker […]

docker的VOLUME没有安装主机文件

我有这个docker文件: FROM node:0.10.38 VOLUME /opt/build WORKDIR /opt/build EXPOSE 8080 CMD node app.js 但是,当我运行容器时,出现app.js不存在的错误,具体来说/opt/build/app.js不存在。 我也尝试过使用ADD和COPY来做到这一点,都说它找不到任何东西,而且我想使用VOLUME,所以它写入到/ opt / build目录下的主机日志中。 所有需要的文件实际上也在主机上。 顺便说一句,我使用coreos作为主机操作系统。

如何将一个环境variables转换成一个dockerfile

我怎样才能将一个环境variables转移到dockerfile中? 该variables是dynamic的,所以我不能使用ENV来做到这一点。 像$( dirname "${BASH_SOURCE[0]}" )是告诉bash脚本的位置的方法。 Dockerfile如何知道它所在的path?

在Docker中运行一个生态系统

我们正在开发一个相当复杂的应用程序,它有一个与CouchDB实例对话的节点服务器,另一个与Redis实例对话的节点服务器,与其他两个节点服务器对话的第三个节点服务器以及一个Redis商店,至。 本地开发需要安装和运行CouchDB,两个redis实例和三个节点应用程序。 这确实不是问题,但我们希望开发人员能够进入项目并立即开始开发,而不会有太大的障碍。 我想创build一个Docker容器来运行所有这些东西,这样他们就可以构build并运行它,并且可以毫无困难地开始开发。 我正在阅读Docker最佳实践文档,并提到您应该每个容器只运行一个进程 – 实际上我们有六个进程。 它build议使用容器链接的依赖服务,但在这种情况下,你似乎仍然需要六个独立的docker容器/实例,必须自己运行它们,然后链接它们。 我想进一步简化。 是否有一个标准的创build一个多个Dockerfiles,所有的互相交互。 有没有简单的方法来同时链接,运行和构build它们? 这是一个好主意,还是只使用supervisor在一个容器中运行所有这些stream程会更好?

通过接受-e参数在Docker容器中运行脚本

我有一个非常简单的脚本称为myscript.sh echo "this is test " > /tmp/myfile.txt echo $TEST >> /tmp/myfile.txt 我已经将这个脚本存储在我的磁盘中,我打算把它作为下面的卷传递给容器 docker run -d –name test \ -v /home/docker/test/myscript.sh:/tmp/myscript.sh \ -e TESTING=just-a-test \ test Dockerfile如下所示 FROM ubuntu CMD ["bash", "/tmp/myscript.sh"] 所以思考的过程是让脚本执行,并得到结果作为文件myfile.txt将包含-e通过。 相反,我越来越 docker @ boot2docker:〜/ test $ docker exec -it test / bin / bash来自守护进程的错误响应:容器testing未运行 这意味着这个最简单的程序不能作为容器执行。 我无法弄清楚。

Docker MongoDB – 数据只有容器是如何移植的

数据只有当容器最终将数据存储在/var/lib/docker下的主机上时,它们是如何移植的? 比方说,我的机器上有这个数据容器,用于将条目存储到数据库中。 现在假设500英里以外的其他人想要使用这个数据容器来存储他的数据库。 我将如何给他的容器?

如何在WORKDIR节中使用env var?

到目前为止,我有一个非常苗条的Dockerfile: FROM ubuntu:trusty ENV MYPACKAGE_VERSION 0.1.2 ADD mypackage-${MYPACKAGE_VERSION}.tar.gz /root/ WORKDIR /root/mypackage-${MYPACKAGE_VERSION}/ .tar.gz被正确地添加到docker文件中(它会被自动提取,这是令人沮丧的,因为这可能不是所有时候都需要的)。 所以在镜像path/root/mypackage-0.1.2/存在,并包含我想要使用的内容,但是WORKDIR节cd进入文字path/root/mypackage-${MYPACKAGE_VERSION} ,转义为/root/fifechan-\$\{FIFECHAN_VERSION\}/ 。 我发现不一致的variables处理非常令人沮丧; 我该如何指定这个目录来使用?