diff --git a/.gitea/workflows/ docker-image.deploy.yml b/.gitea/workflows/ docker-image.deploy.yml index d343f3c..374b518 100644 --- a/.gitea/workflows/ docker-image.deploy.yml +++ b/.gitea/workflows/ docker-image.deploy.yml @@ -17,22 +17,29 @@ jobs: - name: Checkout code uses: actions/checkout@v4 - - name: Create non-root user for BuildKit + - name: Start BuildKit (rootless) run: | adduser -D -u 1000 builder - - name: Start BuildKit (rootless) - run: | - su builder -c ' + # Prepare environment for rootless BuildKit + export XDG_RUNTIME_DIR=/tmp/buildkit + mkdir -p $XDG_RUNTIME_DIR + chown -R builder:builder $XDG_RUNTIME_DIR + + su builder -c " export XDG_RUNTIME_DIR=/tmp/buildkit - mkdir -p $XDG_RUNTIME_DIR + export HOME=/home/builder + mkdir -p \$HOME/.local/share/buildkit + buildkitd \ - --root /home/builder/.local/share/buildkit \ - --addr unix://$XDG_RUNTIME_DIR/buildkitd.sock \ - >/home/builder/buildkitd.log 2>&1 & - ' + --root \$HOME/.local/share/buildkit \ + --addr unix://\$XDG_RUNTIME_DIR/buildkitd.sock \ + >\$HOME/buildkitd.log 2>&1 & + " + sleep 3 + # - name: Check BuildKit daemon # run: | # ls -l /run/buildkit @@ -54,15 +61,16 @@ jobs: - name: Build and push image run: | - su builder -c ' + su builder -c " export XDG_RUNTIME_DIR=/tmp/buildkit buildctl \ - --addr unix://$XDG_RUNTIME_DIR/buildkitd.sock \ + --addr unix://\$XDG_RUNTIME_DIR/buildkitd.sock \ build \ --frontend=dockerfile.v0 \ --local context=./pbsclient \ --local dockerfile=./pbsclient/docker \ --opt filename=Dockerfile \ - --output type=image,name=git.limbosolutions.com/kb/pbsclient:latest,push=true ' + --output type=image,name=git.limbosolutions.com/kb/pbsclient:latest,push=true" +