【发布时间】:2021-01-20 17:15:17
【问题描述】:
我正在尝试在 ubuntu-latest 上使用 github 操作构建 docker 映像。 docker 镜像需要通过 build arg 接收一个 RSA KEY。
虽然在我的 macos 机器中构建图像没有任何问题,但在构建 github 操作时遇到以下错误。
密钥被存储为 ENV 变量,我使用的命令如下:
docker build --build-arg user_private_rsa=$USER_PRIVATE_RSA 。 -t 身份验证服务
使用上面的命令在mac上成功构建镜像,但是使用这个gihub动作时,我一点运气都没有。
on:
push:
branches: [ master ]
jobs:
build-deploy:
name: Build docker image
runs-on: ubuntu-latest
build-push-ecr:
name: Build docker image and push to ecr
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- run: docker build --build-arg user_private_rsa=$USER_PRIVATE_RSA . -t auth-service
- name: Build image
env:
USER_PRIVATE_RSA: ${{ secrets.USER_PRIVATE_RSA }}
错误的标志语法:-----END 请参阅“docker build --help”。
发生错误是因为在 github 操作中执行 docker build,最终成为多行命令。
有没有人遇到过类似的问题并可以帮我解决? 非常感谢!
【问题讨论】:
-
请记住,从 Docker 映像中复制文件非常容易,
docker inspect或docker history可以显示设置为环境变量或在命令行中使用的任何内容。您可能不想像这样将 RSA 密钥注入到您的构建中。 -
嘿,这个不错!不记得了。谢谢!
-
我现在注意到您的名称前有一个虚假的破折号 (-)。 YAML 解析器开始一个新的步骤,而 Docker 步骤永远看不到环境变量
标签: docker build dockerfile rsa github-actions