Tag: 文件

超出Docker磁盘空间

我有这个Docker命令: docker run -d mongo 这将构build并运行在docker容器中运行的mongodb服务器 但是,我收到一个错误: no space left on device 我在MacOS上,并使用更新版本的Docker使用hyper-v而不是VirtualBox(我认为这是正确的)。 这是从mongo容器确切的错误信息: $ docker logs efee16702c5756659d563b98d4ae0f58ecf1f1bba8a54f63443c0ae4b520ab4e about to fork child process, waiting until server is ready for connections. forked process: 21 2017-05-04T20:23:51.412+0000 I CONTROL [main] ***** SERVER RESTARTED ***** 2017-05-04T20:23:51.430+0000 I CONTROL [main] ERROR: Cannot write pid file to /tmp/tmp.Lo035QkbfL: No space left […]

在C#中的Docker链接 – 发现通过链接注入环境variables的最佳方法是什么?

所以我在C#中设置了一个简单的多容器应用程序,下面的文章是Docker化一个Redis服务 我使用下面的Dockerfile创build了我的Redis映像: FROM ubuntu:14.04 RUN apt-get update && apt-get install -y redis-server EXPOSE 6379 ENTRYPOINT ["/usr/bin/redis-server"] 然后我使用以下命令创build我的图像 docker build -t sample/redis 最后创build了我的Redis容器 docker run -d –name redis sample/redis 然后,我创build我的Web应用程序容器,它只运行一个简单的控制台应用程序,使用以下Dockerfile运行Redis FROM ubuntu:14.04 EXPOSE 1234 ENTRYPOINT ["mono","/path/to/my/app/app.exe"] 使用这个Dockerfile,我build立了图像… docker build -t sample/my-app-image 最后,我创build了一个链接到以前创build的Redis容器的容器。 docker run –link redis:redis –name my-app-image -d -it sample/my-app-image 和我的应用程序看起来如下所示: public class Program { […]

Dockerconfiguration:Celery + RabbitMQ

如何在docker集装箱中运行Celery和RabbitMQ? 你能指点我示例docker文件或撰写文件? 这是我的: Dockerfile: FROM python:3.4 ENV PYTHONBUFFERED 1 WORKDIR /tasker ADD requirements.txt /tasker/ RUN pip install -r requirements.txt ADD . /tasker/ 泊坞窗,compose.yml rabbitmq: image: tutum/rabbitmq environment: – RABBITMQ_PASS=mypass ports: – "5672:5672" – "15672:15672" celery: build: . command: celery worker –app=tasker.tasks volumes: – .:/tasker links: – rabbitmq:rabbit 我遇到的问题是我不能让芹菜活着或跑步。 它不断退出。

Dockerfile中的条件ENV

是否有可能根据构buildARG的值有条件地设置一个Dockerfile中的ENVvariables? 例如:像 ARG BUILDVAR=sad ENV SOMEVAR=if $BUILDVAR -eq "SO"; then echo "hello"; else echo "world"; fi 更新:基于Mario回答的当前使用情况: ARG BUILD_ENV=prod ENV NODE_ENV=production RUN if [ "${BUILD_ENV}" = "test" ]; then export NODE_ENV=development; fi 但是,使用–build-arg BUILD_ENV=test ,然后进入主机,我仍然得到 docker run -it mycontainer bin/bash [root@brbqw1231 /]# echo $NODE_ENV production

如何在Docker容器中将Docker套接字安装为正确的组

我想在Docker容器中运行一个Jenkins实例。 我希望jenkins本身能够将docker集装箱作为奴隶运行testing。 看来最好的办法就是使用 docker run -v /var/run.docker.sock:/var/run/docker.sock -p 8080:8080 -ti my-jenkins-image 资源 我正在使用的Dockerfile是 FROM jenkins COPY plugins.txt /usr/share/jenkins/plugins.txt RUN /usr/local/bin/plugins.sh /usr/share/jenkins/plugins.txt USER root RUN apt-get update && apt-get install -y docker.io RUN usermod -aG docker jenkins USER jenkins 如果我在正在运行的容器中启动bash会话,并在我的映像上运行docker info , $ docker info FATA[0000] Get http:///var/run/docker.sock/v1.18/info: dial unix /var/run/docker.sock: permission denied. Are you trying […]

如何将docker容器中的目录挂载到主机上

假设我有这个简单的Dockerfile的应用程序: //… RUN configure.sh –logmyfiles /var/lib/myapp ENTRYPOINT ["starter.sh"] CMD ["run"] EXPOSE 8080 VOLUME ["/var/lib/myapp"] 我从中运行一个容器: sudo docker run -d –name myapp -p 8080:8080 myapp:latest 所以它正常工作,并将一些日志存储在docker容器的/var/lib/myapp中。 我的问题 我需要这些日志文件自动保存在主机,所以我怎么能从容器挂载/var/lib/myapp到/var/lib/myapp在主机服务器(不删除当前容器)? 编辑 我也看到docker – 从容器挂载目录到主机 ,但它不能解决我的问题,我需要一种方法来备份我的文件从docker到主机。

为什么Dockerfile中的cron服务没有运行?

在search这个问题时,我发现: cron -f应该启动服务。 所以我有: RUN apt-get install -qq -y git cron 接下来我有: CMD cron -f && crontab -l > pullCron && echo "* * * * * git -C ${HOMEDIR} pull" >> pullCron && crontab pullCron && rm pullCron 我的dockerfile部署没有错误,但cron不运行。 我能做些什么来增加一行来启动cron服务? PS: 我知道我的cron中的git函数实际上应该是一个钩子,但对于我(也可能是其他人),这是关于学习如何设置与Docker crons 🙂 PPS: 完整的Dockerfile(更新): RUN apt-get update && apt-get upgrade -y RUN […]

为什么Docker官方图片不能按照“最佳实践”的要求使用USER

Postgres,mariadb,mysql不要使用USER。 据说正式的图像审查遵守的最佳做法文件,这需要在可能的用户。 为什么?

如何使用dockerfiles CMD运行一个shell脚本

我正在使用dockerfiles来构build一个简单的容器。 这是Dockerfile : FROM XXXXXXX:5003/base-java MAINTAINER XXXXX ADD pubsub/ /opt/pubsub/ CMD ["/opt/pubsub/run.sh"] run.sh内容如下所示: #!/bin/bash nohup java -jar /opt/pubsub/publish.jar & nohup java -jar /opt/pubsub/subscribe.jar & 这是pub/sub简单java应用程序。 现在我有另一个容器运行rabbitmq,我连接了2个容器,但是我的每个尝试都失败了,而我的pub/sub容器没有启动。 有人可以build议如何去debugging这个问题? 不知何故docker日志没有任何东西。 下面是我如何链接容器: sudo docker run -d -P –name pub_sub –link rabbitmq:rabbitmq1 image_pub_sub 这里是我如何在我的pub/sub代码中使用别名 factory = new ConnectionFactory(); factory.setHost("rabbitmq1"); try { connection = factory.newConnection(); channel = connection.createChannel(); channel.queueDeclare("pub", true, […]

Dockerfile无法build立

直到几天后Dockerfile工作正常,当我试图再次build立它今天它在terminal给出以下错误。 我尝试了多个docker的基础图像,但仍然给出了相同的错误。 谁能帮我这个? 我不认为我错过了任何东西。 如果我错过了,应该早点给我错误,但为什么呢? Err:1 http://security.ubuntu.com/ubuntu xenial-security InRelease Temporary failure resolving 'security.ubuntu.com' Err:2 http://archive.ubuntu.com/ubuntu xenial InRelease Temporary failure resolving 'archive.ubuntu.com' Err:3 http://archive.ubuntu.com/ubuntu xenial-updates InRelease Temporary failure resolving 'archive.ubuntu.com' Err:4 http://archive.ubuntu.com/ubuntu xenial-backports InRelease Temporary failure resolving 'archive.ubuntu.com' Reading package lists… W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial/InRelease Temporary failure resolving 'archive.ubuntu.com' W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-updates/InRelease Temporary […]