问题标签 [docker-build]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - 当我的镜像的基础镜像更新时会发生什么?
我有基于 的图像microsoft/aspnet:4.6.2
,当那些(我的)图像被构建microsoft/aspnet:4.6.2
时,为了构建我自己的图像而被拉下。所以,在我的本地计算机中,我有microsoft/aspnet:4.6.2
图像。假设基础映像已更新,Microsoft 发现映像存在错误并决定进行修复以维护标签,因此仍会调用microsoft/aspnet:4.6.2
它,但实际上它与我构建自己的映像时不同。
所以我有两个问题:
1. 每次我的镜像被拉下时,它都会得到我构建镜像时的基础镜像,对吗?(这似乎很明显,但我需要检查)
2. 如果我注意到(网络挂钩,触发器?)有一个更新的版本,microsoft/aspnet:4.6.2
我可以docker build
再次运行命令并且更新的图像会被拉下吗?请记住,旧的基本映像在我的文件系统中(称为相同)。Docker 是否足够聪明,能够意识到我拥有该基础映像的旧版本并且它会下载它的最新版本?
希望我说清楚了
docker - Docker Copy 似乎有问题
所以我正在尝试制作一个简单的 docker 容器以sabnzbd
在容器中运行。
我做了一个 git clone 然后将sabnzbd
文件夹移动到容器中。
注意:当我查看时sabnzbd
,所有文件看起来都不错,所以这不是 git 问题或分支等。到目前为止我很高兴。
当我然后运行容器时,我仔细检查了一半的文件丢失了。例如,我希望确保cheerypy
已复制但没有,是的,我可以确认我在sabnzbd
文件夹中再次检查了一遍。
所以我有一个包含 Dockerfile 和sabnzbd
. 我使用以下命令从该文件夹构建:
简而言之,唯一有效的是Copy . /
我尝试了COPY sabnzbd/* sabnzbd
其他变体。
我最初认为它是从其他地方获取文件但删除了任何痕迹sabnzbd
,但据我所知,它只查看与 docker build 文件相关的文件。
我只是觉得这太奇怪了,即使我修好了,也想得到一些想法。我确实删除了所有图像并从头开始,但结果是一样的。
我确实尝试了no cache
构建选项,但仍然相同。
想法?
docker - SSL certificates or other files not showing in Docker file structure
I have a Docker build for Gitlab, I created some ssl certificates and other files I need to pull in. However when I exec into the container bash the files are not visible.
docker - docker build 使用注册表中以前的构建缓存
我正在配置一个竹子构建计划来构建 docker 映像。使用 AWS ECS 作为注册表。构建计划是这样的;
拉出最新的标签
/li>使用最新标签构建图像
/li>标记图像(ECS 所必需的)
/li>将镜像推送到注册表
/li>
因为构建任务每次都在不同的新构建引擎/服务器上运行,所以它没有本地缓存。
当我在 Dockerfile 上没有更改任何内容并再次执行它(在另一台服务器上)时,我希望 docker 使用本地缓存(来自 docker pull)并且不会再次执行每一行。但它每次都尝试构建图像。我还期望当我更改文件底部的某些内容时,它将使用缓存并仅执行最新行,但我不确定这一点。
我是否知道有问题或对方法有任何意见?
docker - 如何将 docker build 的架构设置为 arm64?
我有一个在 amd64 上运行但想在 arm64 上运行的 Dockerfile。由于 go build 工具将 GOARCH=arm64 作为参数,因此我不需要任何其他交叉编译工具来制作二进制文件。
问题是生成的图像被标记为错误的架构 amd64 而不是 arm64。如何将参数传递给 docker build 以便将 Architecture 设置为 arm64?
docker - Docker 镜像初始文件系统从何而来?
我正在查看https://github.com/pypa/manylinuxmanylinux1
上的库存图像构建脚本,特别是调用链:
/li>.travis.yml
/li>docker/Dockerfile-<arch>
:
/li>docker/build_scripts/build.sh
:
该脚本假定一个基本的 CentOS 5 文件系统(例如/etc/yum
)已经存在。它从何而来?
我没有看到任何对库存图像的引用,也没有看到从某处下载它或使用安装 ISO 之类的任何东西。代码库中也没有/etc
任何地方。
docker - dockerfile COPY from previous build fails
I'm using a multi-stage builds within my dokcerfile according to docker docs:
but I'm getting the following error
I also tried the index instead of the name: COPY —-from=0
but still same result.
if I skip first build, I manually kick the yarn build and I copy the build result into the single container
it works fine...
docker - 在 docker build 期间 add-apt-repository 失败
我正在尝试启动并运行dordoka/tomcat docker映像,但运行时出现此错误docker build
:
失败的命令是add-apt-repository -y ppa:webupd8team/ubuntu/y-ppa-manager
. 此命令在 docker 之外运行良好。据我所知,代理配置正确。有任何想法吗?
java - FROM 需要一到三个参数 Docker
我跑docker build -t imagename .
我收到以下错误:
谁能告诉我应该怎么解决这个问题。我从 17.12 降级到 17.06,这样我Bad Response from Docker Enginer
在构建时就没有得到。其他人工作正常。我可以提取并运行其他图像。我无法建造。请帮助并提出修复建议,谢谢!
我的码头工人版本是
码头工人信息是:
Docker文件是:
docker - 如何为 docker-compose 构建阶段指定构建选项?
我有一个主要的 docker-compose.yml:
我有一个带有Dockerfile和docker-compose.yml的文件夹识别器:
Dockerfile:
码头工人-compose.yml:
我的文件结构是:
所以,我需要localhost
在build
阶段连接到。有用。如果我使用 option 构建 Docker 映像--network=host
,如下所示:
但我不知道如何为 docker-compose 指定构建选项。