Tag: 文件

将新的入口点添加到泊坞窗图像

最近,我们决定将我们的服务之一搬到docker集装箱。 该服务是另一家公司的产品,他们为我们提供了docker形象。 但是,我们需要在容器入口点做一些额外的configuration步骤。 我尝试的第一件事是从基础镜像创buildDockerFile,然后添加命令来执行额外的步骤,如下所示: From baseimage:tag RUN chmod a+w /path/to/entrypoint_creates_this_file 但是,它失败了,因为这些额外的步骤必须在运行基本容器入口点之后运行。 有什么方法可以扩展基础图像的入口点吗? 如果没有,那么做到这一点的正确方法是什么? 谢谢

在Dockerfile中使用什么tianon / true?

我遇到了一些docker工人,发现了我的docker文件中使用的tianon/true图像。 我的docker-compose.yml文件如下所示: app: image: mageinferno/magento2-nginx:1.11-1 links: – phpfpm – db volumes_from: – appdata ports: – 8000:80 env_file: env/nginx.env appdata: image: tianon/true volumes: – /var/www/html – ~/.composer:/var/www/.composer – ./html/app/code:/home/gujarat/php/html/app/code – ./html/app/design:/home/gujarat/php/html/app/design – ./html/app/etc:/var/www/html/app/etc – ./html/downloads:/var/www/html/downloads phpfpm: image: mageinferno/magento2-php:7.0-fpm-1 links: – db – mail volumes_from: – appdata db: image: percona:5.7 volumes_from: – dbdata ports: – 8001:3306 env_file: […]

Docker命令/选项来显示或列出构build上下文

是否有一个命令/选项来显示或列出发送到Docker守护程序以构build映像的上下文? $ docker build -t "image-name" Sending build context to Docker daemon 8.499 MB … 通过在.dockerignore文件中指定模式,可以将文件和目录从构build上下文中排除。 我想我正在寻找的东西等于除了Docker在确定上下文时使用的任何其他利基规则之外,还要testing.dockerignore 。

Jekyll-Assets:build筑工地时遗失资产

在使用构build命令正确导出所有资产时,我正努力克服Jekyll-Assets的一个奇怪行为。 该configuration被设置为使用“文件系统”cachingtypes的caching空间。 build设时,我们正确地获取所有的图像和字体。 但是在其中一个scss文件中,似乎字体和图像是随机导出的(有时是的,其他时间不是)。 当文件不被导出时,用css写的path是正确的,包含cachebust的散列。 在尝试删除.assets-cache和_site/文件夹的时候,我发现这个随机变得更加频繁。 这是configuration 开发环境(Docker Container): version: '3' services: jekyll: build: . command: jekyll build –watch –incremental volumes: – .:/usr/src/app nginx: image: nginx:stable-alpine volumes: – ./_site:/usr/share/nginx/html ports: – 8080:80 depends_on: – jekyll 开发环境(Dockerfile): FROM ruby:2.4.1-stretch RUN apt-get update -qq && \ apt-get install -y build-essential RUN mkdir /usr/src/app WORKDIR /usr/src/app ADD Gemfile […]

为什么我的docker-cmd不能用sh执行?

CMD [“./run-nginx.sh”]脚本不执行并引发混乱:standard_init_linux.go:175:exec用户进程导致“exec格式错误”[恢复] 。 为什么这样? 你能帮忙:(我的机器是win10和docker版本:docker版本1.12.3, Dockerfile FROM nginx ADD run-nginx.sh /usr/app/src/ ADD setup-index-page.sh /usr/app/src/ WORKDIR /usr/app/src/ RUN chmod +x run-nginx.sh RUN chmod +x setup-index-page.sh CMD ["./run-nginx.sh"] run-nginx.sh #!/usr/bin/env bash ./setup-index-page.sh exec nginx -g 'daemon off;' setup-index-page.sh #!/usr/bin/env bash container_id=${hostname} color=${container_id:0:6} echo "<body>Serving you from container id: ${hostname}</body>" > /usr/share/nginx/html/index.html 响应 panic: standard_init_linux.go:175: exec user process […]

我应该如何根据这个架构Dockerise MEAN堆栈?

我是Docker的新手。 你能看看我下面的附件吗? 计划 我想要的是能够在船上安装当前软件的一定数量的孤立docker集装箱: NodeJs(npm,pm2,grunt-cli等) MongoDB的 其他软件(cron,ffmpeg等) 每个隔离的容器都与应用程序代码链接到相同的卷,但是以不同的ENVvariables启动:expressJS端口,db名称等等。您find了我,对不对? 例如,我们有2个独立的容器: stack1和stack2 。 他们两个都使用与主机上位于/ home / user / app_code /(volume mount)的应用程序代码相同的音量。 stack1在3001端口上启动,并连接到其在​​/ home / user / db1(卷装载)上使用DB的mongoDB服务器,并具有位于/ home / user / storage1的多媒体专用存储 在stack2在3002端口上启动,并连接到在/ home / user / db2(卷装载)上使用数据库的mongoDB服务器,并具有位于/ home / user / storage2的多媒体专用存储 当然stack1和stack2放在Nginx单容器反向代理的后面。 这个问题 实施我的计划最好的方法是什么? 据我了解,在我的情况下, docker-compose不是合适的工具。 最后,我可以构build只有nodeJs图像和Mongo图像组成的堆栈。 但是如何处理ffmpeg和cron? 如何繁殖堆栈? 有可能把它们放在罪恶的Nginx容器之后吗? 第二种方法是采用“phusion / baseimage-docker” ,手动安装NodeJs,Mongodb,ffmpeg,将这个容器相乘并隐藏每个后面的Nginx的代理。 但是这种方法有点违背了编写Dockerfiles的最佳实践 […]

如何在“docker build”期间更新Docker镜像中的/ etc / hosts文件

我想在“docker build”期间更新我的/etc/hosts文件。 我在Dockerfile的下面添加了一行,但是它没有更新/etc/hosts文件也没有提供任何错误。 RUN echo "192.168.33.11 mynginx" >> /etc/hosts 我需要更新/etc/hosts 。 任何人都可以在这个build议?

在Dockerfile中多个RUN与单链运行,哪个更好?

Dockerfile.1执行多个RUN : FROM busybox RUN echo This is the A > a RUN echo This is the B > b RUN echo This is the C > c Dockerfile.2join它们: FROM busybox RUN echo This is the A > a &&\ echo This is the B > b &&\ echo This is the C > c […]

在postgres中以单用户模式创build表

我试图从postgres图像创build一个Dockerfile。 回购说,应该通过在/docker-entrypoint-initdb.d/中放置一个shell脚本来处理初始化。 我根据我在网上find的一个例子,把下面的脚本: #!/bin/bash echo "******CREATING DOCKER DATABASE******" gosu postgres postgres –single <<- EOSQL CREATE DATABASE orpheus; CREATE USER docker WITH ENCRYPTED PASSWORD 'pwd_docker'; GRANT ALL PRIVILEGES ON DATABASE orpheus to docker; CREATE TABLE profiles ( \ profile_id SERIAL UNIQUE PRIMARY KEY, \ user_id integer NOT NULL UNIQUE, \ profile_photo_id integer NOT NULL UNIQUE, \ […]

有没有一种方法来干扰Dockerfile?

如果Dockerfile写有错误,例如: CMD ["service", "–config", "/etc/service.conf] (缺less引用) 在构build之前有没有办法检测到这种错误?