我正在将其用于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(未找到)。
有人知道新位置吗?
答案 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