docker - 如何检查 DockerHub 上用于自动构建的 Docker 版本?
问题描述
我有一个Dockerfile
使用COPY --chown $UID:$GID
语法的。我可以使用 Docker 在Dockerfile
运行 Docker 版本 19.03.5 的 MacBook 和 Linux 工作站上毫无问题地使用 Docker 构建映像。但是,我在 DockerHub 上的自动构建失败并出现以下错误。
Step 16/26 : COPY --chown=$UID:$GID environment.yml requirements.txt postBuild ./
unable to convert uid/gid chown string to host mapping: can't find uid for user $UID: no such user: $UID
build hook failed! (1)
我对这次失败感到惊讶,因为我认为 DockerHub 将使用最新版本的 Docker 进行自动构建。
如何查看 DockerHub 使用的 Docker 版本?如果我可以指定 DockerHub 应该在我的构建挂钩中使用的 Docker 版本,那就更好了。
解决方案
似乎这些变量$UID
并$GID
没有在他们的环境中设置。在这种情况下,您应该像这样使用 id 1000
:
COPY --chown=1000:1000 environment.yml requirements.txt postBuild ./
推荐阅读
- c++ - 简单的多线程程序问题
- java - 如何使用流映射和reduce更新整数的ArrayLists的ArrayList中的元素?
- javascript - 是否在每个发生的事件上创建一个 e var?
- react-native - 带有本机反应的PayPal订阅不起作用
- java - 为什么 Zookeeper 重新上线后,curator 没有恢复?
- java - Spring集成轮询器
- react-native - 如何使用 i18next 获取存储在 AsyncStorage 中的语言环境?
- python - Python:当两个数据框在两个不同的列中共享一个公共值时,返回整行
- c++ - 无法在网络摄像头视频 OpenCV C++ 上绘制矩形
- laravel - Laravel 8 登录尝试与 Fortify 429 TOO MANY REQUESTS