所以我创建了一个GitHub操作,它应该在每次推送发生时创建一个Docker图像并将其推送到Docker Hub。(第一次创建GitHub动作)
name: Some name
on:
push:
jobs:
build_frontend:
runs-on: ubuntu-latest
steps:
- name: Build frontend image
run: docker image build -t image .
- name: Push frontend image
uses: elgohr/Publish-Docker-Github-Action@2.14
with:
name: image
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }}
但每次运行时都会出现以下错误:
无法准备上下文:无法评估Dockerfile路径中的符号链接:lstat /home/运行程序/工作/项目/项目/停靠文件:no such file or directory [错误]进程已完成,退出代码为1。
我试着摆弄路径,但后来我只得到没有这样的文件或目录。所以这是我最接近的东西工作。
谢谢你的帮助
3条答案
按热度按时间2w2cym1i1#
我相信你需要使用checkout操作。在你这样做之前,你的仓库实际上是不可用的:
因此,在“构建前端映像”之前:
因为你的Dockerfile在你的根目录下,应该可以了。
sqougxex2#
我认为它是在顶层运行的,所以如果你的docker文件不在那里,它就找不到它,你会得到一个错误。
例如,我有一个结构,看起来像这样:
并且得到了同样的错误。然后我在我的操作中确保yml文件,我在构建之前更改到了正确的目录:
因此,我建议在运行Docker Build之前,尝试进入您的Dockerfile所在的任何文件夹。
xv8emn3q3#
https://github.com/docker/build-push-action#git-context