使用Compose,如果我运行docker Compose build
,它将重建所有容器:
> docker-compose build
Building elasticsearch
Step 1 : FROM elasticsearch:2.1
---> a05cc7ed3f32
Step 2 : RUN /usr/share/elasticsearch/bin/plugin install analysis-phonetic
---> Using cache
---> ec07bbdb8a18
Successfully built ec07bbdb8a18
Building search
Step 1 : FROM php:5.5.28-fpm
---> fcd24d1058c0
...
即使在使用缓存重建时,这也需要时间。所以我的问题是:
有没有办法只重建一个特定的容器?
如果你想在docker-comment文件中运行和重新创建一个特定的服务,你可以像@dnephin建议的那样做,比如
$ docker-compose up -d --force-recreate --no-deps --build service_name
假设你的docker-compose.yml文件就像
version: '3'
services:
service_1:
.....
service_2:
.....
docker-compose up -d --no-deps --build <service_name>
来源
是的,请使用服务名称:
docker-compose build elasticsearch
问题内容: 我正在寻找构建表示已经存在的公司数据库的dockerfile。同样,我想创建一个从还原psql转储开始的docker文件。 我在目录中。 我认为这样做就足够了。我想避免使用脚本的解决方案。 我使用template0,因为psql文档说您需要与原始数据库中创建的用户相同,并且需要在还原之前使用template0创建数据库。 但是,这给了我一个错误: 我还在整个应用程序中使用docker
本文向大家介绍创建一个MySQL Docker容器,包括了创建一个MySQL Docker容器的使用技巧和注意事项,需要的朋友参考一下 Docker容器化的最重要功能之一是,它创建了一个有限的环境,用于在安装所有必需的依赖项和软件包的情况下运行应用程序。大多数应用程序需要后端数据库来存储数据点。Oracle提供了可在容器中运行MySQL的Docker映像,因此它成为测试数据库应用程序的理想选择。测
假设我在Fedora中以的身份登录,我将从Dockerfile构建Docker映像。该映像将包含一个LAMP环境。我有一个Apache虚拟主机(VH)默认文件,如下所示: 作为构建过程的一部分,该文件被复制到图像上的适当位置。 我可以从主机获取登录用户名并动态设置到此VH吗?最后,我希望得到以下结果: 我知道我可以从bash中使用获取当前用户的值,但我如何在Docker构建中将其插入/设置到VH文
我正在尝试设置一个运行UbuntuLinux18.04作为docker主机的构建服务器。 主机有三个docker容器在运行——docker注册表——Gitlab服务器——Gitlab Runner(用于构建应用程序) 我希望Gitlab Runner容器使用nginx和编译的Angular代码构建docker映像,并将其推送到docker注册表。 我已经成功地设置了所有三个运行的容器,Gitlab
通过前面的介绍,我们知道了Docker 镜像是多个基于 UnionFS 的镜像层依次挂载的结果,而容器的文件系统则是在以只读方式挂载镜像后增加的一个可读可写的文件系统复合而成。 Docker 中为我们提供了将容器中的这个可读可写的环境持久化为一个镜像层的方法,即docker commit。 docker commit将容器修改的内容保存为镜像,我们可以把它理解为提交容器的更改。 1.生成变更后的镜
问题内容: 我有一个Jenkins作为docker容器运行,现在我想使用管道构建Docker映像,但是Jenkins容器总是告诉未找到Docker。 这是我运行詹金斯图像的方式: Jenkins映像的DockerFile是:https : //github.com/jenkinsci/docker/blob/9f29488b77c2005bbbc5c936d47e697689f8ef6e/Dock