Docker操作的新位置

时间:2019-10-12 03:24:41

标签: docker github-actions

我正在将其用于docker:

- name: Build container image
  uses: actions/docker/cli@master
  with:
    ///// removed

- name: Docker Login
  uses: actions/docker/login@master
  env:
    ///// removed

但是github.com/actions/docker似乎不再存在。

我的版本提供404:

  

无法下载操作'https://api.github.com/repos/actions/docker/tarball/master'。错误响应状态代码不表示成功:404(未找到)。

有人知道新位置吗?

1 个答案:

答案 0 :(得分:4)

actions/docker操作现已被弃用。在完全删除存储库之前,已将以下消息归档。

  

不建议使用此操作,而建议使用新的YAML语言中的运行脚本步骤来运行docker cli。

因此,推荐的使用Docker的方法是使用run脚本命令。正式的入门工作流程显示了一个简单的示例来构建图像。 https://github.com/actions/starter-workflows/blob/master/ci/docker-image.yml

有关Docker映像发布的更完整示例,请参见以下工作流程。

对于公共DockerHub注册中心:

name: my workflow
on:
  push:
    branches:
      - master
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - name: Login to DockerHub Registry
        run: echo ${{ secrets.DOCKERHUB_PASSWORD }} | docker login -u ${{ secrets.DOCKERHUB_USERNAME }} --password-stdin
      - name: Build the Docker image
        run: docker build -t myimage:latest .
      - name: Tag the Docker image
        run: docker tag myimage:latest myimage:1.0
      - name: Push the Docker image to the registry
        run: docker push myimage:1.0

对于私有注册表,例如新的GitHub Package Registry,您还需要在登录时指定主机名并适当标记图像:

name: my workflow
on:
  push:
    branches:
      - master
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - name: Login to GitHub Package Registry
        run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login docker.pkg.github.com -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
      - name: Build the Docker image
        run: docker build -t myimage:latest .
      - name: Tag the Docker image
        run: docker tag myimage:latest docker.pkg.github.com/username/repository/myimage:1.0
      - name: Push the Docker image to the registry
        run: docker push docker.pkg.github.com/username/repository/myimage:1.0