Jenkins 构建没有正确执行 `docker tag` 命令
Jenkins build not executing `docker tag` command correctly
我正在尝试构建 https://github.com/ansible/awx。
为了设置我的 Jenkins 环境,我在 AWS 中部署了 Ubuntu,安装了开发工具 docker 和 Jenkins,并将 jenkins 用户加入了 docker 组。然后,我使用默认配置设置 Jenkins。
设置 Jenkins 后,我创建了一个 "freestyle project," 将 SCM git 存储库 URL 设置为 https://github.com/ansible/awx.git,然后添加了一个执行 shell 构建步骤到以下内容:
cp awx/settings/local_settings.py.docker_compose awx/settings/local_settings.py
make docker-compose-build
建造。很简单吧?!不会。构建会按预期创建 docker 图像。但是,Makefile 的最终命令是使用以下命令标记 docker 图像:
docker tag ansible/awx_devel gcr.io/ansible-tower-engineering/awx_devel:origin/devel
但是,这 returns 以下内容:
Error parsing reference: "gcr.io/ansible-tower-engineering/awx_devel:origin/devel" is not a valid repository/tag: invalid reference format
如果我在类似的环境中运行 make 命令,则不会发生此错误。如果我在类似环境中 运行 docker 标记命令,则不会发生这种情况。
P.S。我已经尝试明确设置 shell.
https://docs.docker.com/engine/reference/commandline/tag/
A tag name must be valid ASCII and may contain lowercase and uppercase letters, digits, underscores, periods and dashes. A tag name may not start with a period or a dash and may contain a maximum of 128 characters.
因此,问题出在您的标签名称中的 /
。尝试使用 origin-devel
.
标记
我正在尝试构建 https://github.com/ansible/awx。
为了设置我的 Jenkins 环境,我在 AWS 中部署了 Ubuntu,安装了开发工具 docker 和 Jenkins,并将 jenkins 用户加入了 docker 组。然后,我使用默认配置设置 Jenkins。
设置 Jenkins 后,我创建了一个 "freestyle project," 将 SCM git 存储库 URL 设置为 https://github.com/ansible/awx.git,然后添加了一个执行 shell 构建步骤到以下内容:
cp awx/settings/local_settings.py.docker_compose awx/settings/local_settings.py
make docker-compose-build
建造。很简单吧?!不会。构建会按预期创建 docker 图像。但是,Makefile 的最终命令是使用以下命令标记 docker 图像:
docker tag ansible/awx_devel gcr.io/ansible-tower-engineering/awx_devel:origin/devel
但是,这 returns 以下内容:
Error parsing reference: "gcr.io/ansible-tower-engineering/awx_devel:origin/devel" is not a valid repository/tag: invalid reference format
如果我在类似的环境中运行 make 命令,则不会发生此错误。如果我在类似环境中 运行 docker 标记命令,则不会发生这种情况。
P.S。我已经尝试明确设置 shell.
https://docs.docker.com/engine/reference/commandline/tag/
A tag name must be valid ASCII and may contain lowercase and uppercase letters, digits, underscores, periods and dashes. A tag name may not start with a period or a dash and may contain a maximum of 128 characters.
因此,问题出在您的标签名称中的 /
。尝试使用 origin-devel
.