[GH-ISSUE #1390] Docker Desktop 22.06.0-beta: invalid filter 'reference' #733

Closed
opened 2026-03-01 21:45:56 +03:00 by kerem · 6 comments
Owner

Originally created by @drew-viles on GitHub (Oct 14, 2022).
Original GitHub issue: https://github.com/nektos/act/issues/1390

Bug report info

act version:            0.2.32                                          
GOOS:                   linux                                           
GOARCH:                 amd64                                           
NumCPU:                 2                                               
Docker host:            DOCKER_HOST environment variable is unset/empty.
Sockets found:                                                          
        /var/run/docker.sock                                            
Config files:                                                           
        /home/drew/.actrc:                                              
                -P ubuntu-latest=catthehacker/ubuntu:act-latest         
                -P ubuntu-22.04=catthehacker/ubuntu:act-22.04           
                -P ubuntu-20.04=catthehacker/ubuntu:act-20.04
                -P ubuntu-18.04=catthehacker/ubuntu:act-18.04
Build info:
        Go version:            go1.18.6
        Module path:           github.com/nektos/act
        Main version:          (devel)
        Main path:             github.com/nektos/act
        Main checksum:
        Build settings:
                -compiler:            gc
                -ldflags:             -s -w -X main.version=0.2.32 -X main.commit=21484b5c1ecbd9e1ddb6a57debd7731a3e1fc25f -X main.date=2022-10-01T03:01:40Z -X main.builtBy=goreleaser
                CGO_ENABLED:          0
                GOARCH:               amd64
                GOOS:                 linux
                GOAMD64:              v1
                vcs:                  git
                vcs.revision:         21484b5c1ecbd9e1ddb6a57debd7731a3e1fc25f
                vcs.time:             2022-09-29T05:59:52Z
                vcs.modified:         false
Docker Engine:
        Engine version:        22.06.0-beta.0-372-gd3bb8227ce.m
        Engine runtime:        runc
        Cgroup version:        1
        Cgroup driver:         cgroupfs
        Storage driver:        stargz
        Registry URI:          https://index.docker.io/v1/
        OS:                    Docker Desktop
        OS type:               linux
        OS version:
        OS arch:               x86_64
        OS kernel:             5.10.102.1-microsoft-standard-WSL2
        OS CPU:                2
        OS memory:             3924 MB
        Security options:
                name=seccomp,profile=builtin

Command used with act

act
or
act -j kube_image_builder_job

Both create the same output

Describe issue

I just expected it to be able to run.

No response

Workflow content

name: Lint and Test Charts

on: [push]


jobs:
  lint-chart:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v3.0.2
        with:
          fetch-depth: 0

      - name: Install Helm
        uses: azure/setup-helm@v3
        with:
          version: 3.3.0

      - uses: actions/setup-python@v4
        with:
          python-version: 3.9

      - name: Install chart-testing
        uses: helm/chart-testing-action@v2.3.0

      - name: Run lint
        run: ct lint --all --config .github/ct.yaml

  lint-docs:
    runs-on: ubuntu-latest
    needs: lint-chart
    steps:
      - name: Checkout
        uses: actions/checkout@v3.0.2

      - name: Run helm-docs
        run: .github/helm-docs.sh

  kubeconform-chart:
    runs-on: ubuntu-latest
    needs:
      # - lint-chart
      - lint-docs
    strategy:
      matrix:
        k8s:
          # from https://github.com/yannh/kubernetes-json-schema
          - v1.22.9
          - v1.23.9
          - v1.24.4
          - v1.25.0
    steps:
      - name: Checkout
        uses: actions/checkout@v3.0.2
        with:
          fetch-depth: 0

      - name: Run kubeconform
        env:
          KUBERNETES_VERSION: ${{ matrix.k8s }}
        run: .github/kubeconform.sh

Relevant log output

time="2022-10-14T12:31:40+01:00" level=debug msg="Loading environment from E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.env"
time="2022-10-14T12:31:40+01:00" level=debug msg="Loading secrets from E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.secrets"
time="2022-10-14T12:31:40+01:00" level=debug msg="Loading workflows from 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.github\\workflows'"
time="2022-10-14T12:31:40+01:00" level=debug msg="Loading workflows recursively"
time="2022-10-14T12:31:40+01:00" level=debug msg="Found workflow 'ci.yaml' in 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.github\\workflows\\ci.yaml'"
time="2022-10-14T12:31:40+01:00" level=debug msg="Found workflow 'release.yaml' in 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.github\\workflows\\release.yaml'"
time="2022-10-14T12:31:40+01:00" level=debug msg="Reading workflow 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.github\\workflows\\ci.yaml'"
time="2022-10-14T12:31:40+01:00" level=debug msg="Reading workflow 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.github\\workflows\\release.yaml'"
time="2022-10-14T12:31:40+01:00" level=debug msg="Preparing plan with all jobs"
time="2022-10-14T12:31:40+01:00" level=debug msg="Using default workflow event: push"
time="2022-10-14T12:31:40+01:00" level=debug msg="Planning jobs for event: push"
time="2022-10-14T12:31:40+01:00" level=debug msg="Loading slug from git directory 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.git'"
time="2022-10-14T12:31:40+01:00" level=debug msg="Loading revision from git directory 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.git'"
time="2022-10-14T12:31:40+01:00" level=debug msg="Found revision: 22dacb7e00feb33ac1c8a99e0dab08806ed59be4\n"
time="2022-10-14T12:31:40+01:00" level=debug msg="HEAD points to '22dacb7e00feb33ac1c8a99e0dab08806ed59be4'"
time="2022-10-14T12:31:40+01:00" level=debug msg="using github ref: refs/heads/releases/drone-runner-kube-0.2.0"
time="2022-10-14T12:31:40+01:00" level=debug msg="Found revision: 22dacb7e00feb33ac1c8a99e0dab08806ed59be4\n"
[Release Charts/release] [DEBUG] evaluating expression 'success()'
[Release Charts/release] [DEBUG] expression 'success()' evaluated to 'true'
[Release Charts/release] 🚀  Start image=catthehacker/ubuntu:act-latest
[Release Charts/release]   🐳  docker pull image=catthehacker/ubuntu:act-latest platform= username= forcePull=false
[Release Charts/release] [DEBUG]   🐳  docker pull catthehacker/ubuntu:act-latest
[Release Charts/release] [DEBUG] Image exists? false
Error: unable to determine if image already exists for image 'catthehacker/ubuntu:act-latest' (): Error response from daemon: invalid filter 'reference'

Additional information

I don't seem to be able to get this working on Windows or Windows Subsystem for Linux at all.

This is a fresh install.

I've manually pulled the image catthehacker/ubuntu:act-latest and it's still unable to detect the image.

Any recommendations I can try to get this working?

Originally created by @drew-viles on GitHub (Oct 14, 2022). Original GitHub issue: https://github.com/nektos/act/issues/1390 ### Bug report info ```plain text act version: 0.2.32 GOOS: linux GOARCH: amd64 NumCPU: 2 Docker host: DOCKER_HOST environment variable is unset/empty. Sockets found: /var/run/docker.sock Config files: /home/drew/.actrc: -P ubuntu-latest=catthehacker/ubuntu:act-latest -P ubuntu-22.04=catthehacker/ubuntu:act-22.04 -P ubuntu-20.04=catthehacker/ubuntu:act-20.04 -P ubuntu-18.04=catthehacker/ubuntu:act-18.04 Build info: Go version: go1.18.6 Module path: github.com/nektos/act Main version: (devel) Main path: github.com/nektos/act Main checksum: Build settings: -compiler: gc -ldflags: -s -w -X main.version=0.2.32 -X main.commit=21484b5c1ecbd9e1ddb6a57debd7731a3e1fc25f -X main.date=2022-10-01T03:01:40Z -X main.builtBy=goreleaser CGO_ENABLED: 0 GOARCH: amd64 GOOS: linux GOAMD64: v1 vcs: git vcs.revision: 21484b5c1ecbd9e1ddb6a57debd7731a3e1fc25f vcs.time: 2022-09-29T05:59:52Z vcs.modified: false Docker Engine: Engine version: 22.06.0-beta.0-372-gd3bb8227ce.m Engine runtime: runc Cgroup version: 1 Cgroup driver: cgroupfs Storage driver: stargz Registry URI: https://index.docker.io/v1/ OS: Docker Desktop OS type: linux OS version: OS arch: x86_64 OS kernel: 5.10.102.1-microsoft-standard-WSL2 OS CPU: 2 OS memory: 3924 MB Security options: name=seccomp,profile=builtin ``` ### Command used with act ```sh act or act -j kube_image_builder_job Both create the same output ``` ### Describe issue I just expected it to be able to run. ### Link to GitHub repository _No response_ ### Workflow content ```yml name: Lint and Test Charts on: [push] jobs: lint-chart: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3.0.2 with: fetch-depth: 0 - name: Install Helm uses: azure/setup-helm@v3 with: version: 3.3.0 - uses: actions/setup-python@v4 with: python-version: 3.9 - name: Install chart-testing uses: helm/chart-testing-action@v2.3.0 - name: Run lint run: ct lint --all --config .github/ct.yaml lint-docs: runs-on: ubuntu-latest needs: lint-chart steps: - name: Checkout uses: actions/checkout@v3.0.2 - name: Run helm-docs run: .github/helm-docs.sh kubeconform-chart: runs-on: ubuntu-latest needs: # - lint-chart - lint-docs strategy: matrix: k8s: # from https://github.com/yannh/kubernetes-json-schema - v1.22.9 - v1.23.9 - v1.24.4 - v1.25.0 steps: - name: Checkout uses: actions/checkout@v3.0.2 with: fetch-depth: 0 - name: Run kubeconform env: KUBERNETES_VERSION: ${{ matrix.k8s }} run: .github/kubeconform.sh ``` ### Relevant log output ```sh time="2022-10-14T12:31:40+01:00" level=debug msg="Loading environment from E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.env" time="2022-10-14T12:31:40+01:00" level=debug msg="Loading secrets from E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.secrets" time="2022-10-14T12:31:40+01:00" level=debug msg="Loading workflows from 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.github\\workflows'" time="2022-10-14T12:31:40+01:00" level=debug msg="Loading workflows recursively" time="2022-10-14T12:31:40+01:00" level=debug msg="Found workflow 'ci.yaml' in 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.github\\workflows\\ci.yaml'" time="2022-10-14T12:31:40+01:00" level=debug msg="Found workflow 'release.yaml' in 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.github\\workflows\\release.yaml'" time="2022-10-14T12:31:40+01:00" level=debug msg="Reading workflow 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.github\\workflows\\ci.yaml'" time="2022-10-14T12:31:40+01:00" level=debug msg="Reading workflow 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.github\\workflows\\release.yaml'" time="2022-10-14T12:31:40+01:00" level=debug msg="Preparing plan with all jobs" time="2022-10-14T12:31:40+01:00" level=debug msg="Using default workflow event: push" time="2022-10-14T12:31:40+01:00" level=debug msg="Planning jobs for event: push" time="2022-10-14T12:31:40+01:00" level=debug msg="Loading slug from git directory 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.git'" time="2022-10-14T12:31:40+01:00" level=debug msg="Loading revision from git directory 'E:\\OwnCloud\\Projects\\GitOps\\GoLang\\gitea.viles.uk\\dcp\\helm-charts\\.git'" time="2022-10-14T12:31:40+01:00" level=debug msg="Found revision: 22dacb7e00feb33ac1c8a99e0dab08806ed59be4\n" time="2022-10-14T12:31:40+01:00" level=debug msg="HEAD points to '22dacb7e00feb33ac1c8a99e0dab08806ed59be4'" time="2022-10-14T12:31:40+01:00" level=debug msg="using github ref: refs/heads/releases/drone-runner-kube-0.2.0" time="2022-10-14T12:31:40+01:00" level=debug msg="Found revision: 22dacb7e00feb33ac1c8a99e0dab08806ed59be4\n" [Release Charts/release] [DEBUG] evaluating expression 'success()' [Release Charts/release] [DEBUG] expression 'success()' evaluated to 'true' [Release Charts/release] 🚀 Start image=catthehacker/ubuntu:act-latest [Release Charts/release] 🐳 docker pull image=catthehacker/ubuntu:act-latest platform= username= forcePull=false [Release Charts/release] [DEBUG] 🐳 docker pull catthehacker/ubuntu:act-latest [Release Charts/release] [DEBUG] Image exists? false Error: unable to determine if image already exists for image 'catthehacker/ubuntu:act-latest' (): Error response from daemon: invalid filter 'reference' ``` ### Additional information I don't seem to be able to get this working on Windows or Windows Subsystem for Linux at all. This is a fresh install. I've manually pulled the image catthehacker/ubuntu:act-latest and it's still unable to detect the image. Any recommendations I can try to get this working?
kerem 2026-03-01 21:45:56 +03:00
Author
Owner

@wbadart commented on GitHub (Oct 21, 2022):

I'm running into this on a Mac (Intel), Docker Desktop 4.13.0.

EDIT: disabling "Use containerd for pulling and storing images" in the Beta Features section of Preferences seems to have fixed it.

<!-- gh-comment-id:1287450822 --> @wbadart commented on GitHub (Oct 21, 2022): I'm running into this on a Mac (Intel), Docker Desktop 4.13.0. EDIT: disabling "Use containerd for pulling and storing images" in the Beta Features section of Preferences seems to have fixed it.
Author
Owner

@drew-viles commented on GitHub (Oct 27, 2022):

Yup, disabling that works for me too.

However I do now get:

[Main/Lint files] 🚀  Start image=catthehacker/ubuntu:act-22.04
[Main/Lint files]   🐳  docker pull image=catthehacker/ubuntu:act-22.04 platform= username= forcePull=false
Error: Error response from daemon: Head "https://registry-1.docker.io/v2/catthehacker/ubuntu/manifests/act-22.04": unauthorized: please use personal access token to login

I am authenticated with Dockerhub so I suspect that username= bit is the problem. Manually pulling the image makes it all work fine though so I'm happy enough now.

I won't close it just in case the maintainers want this for future work.

<!-- gh-comment-id:1293333399 --> @drew-viles commented on GitHub (Oct 27, 2022): Yup, disabling that works for me too. However I do now get: ``` [Main/Lint files] 🚀 Start image=catthehacker/ubuntu:act-22.04 [Main/Lint files] 🐳 docker pull image=catthehacker/ubuntu:act-22.04 platform= username= forcePull=false Error: Error response from daemon: Head "https://registry-1.docker.io/v2/catthehacker/ubuntu/manifests/act-22.04": unauthorized: please use personal access token to login ``` I am authenticated with Dockerhub so I suspect that `username=` bit is the problem. Manually pulling the image makes it all work fine though so I'm happy enough now. I won't close it just in case the maintainers want this for future work.
Author
Owner

@github-actions[bot] commented on GitHub (Nov 27, 2022):

Issue is stale and will be closed in 14 days unless there is new activity

<!-- gh-comment-id:1328137599 --> @github-actions[bot] commented on GitHub (Nov 27, 2022): Issue is stale and will be closed in 14 days unless there is new activity
Author
Owner

@ChristopherHX commented on GitHub (Dec 9, 2022):

Docker promises to implement it someday, hopefully before it goes out of beta

The reference filter isn’t implemented yet and will return the error invalid filter 'reference' when listing images.

https://docs.docker.com/desktop/containerd/

We can reopen it if docker considers not to reimplement this feature before it releases

I am authenticated with Dockerhub so I suspect that username= bit is the problem. Manually pulling the image makes it all work fine though so I'm happy enough now.

This was reported here too:

https://github.com/nektos/act/discussions/1165

No idea what happens there

<!-- gh-comment-id:1344576556 --> @ChristopherHX commented on GitHub (Dec 9, 2022): Docker promises to implement it someday, hopefully before it goes out of beta > The reference filter isn’t implemented yet and will return the error invalid filter 'reference' when listing images. https://docs.docker.com/desktop/containerd/ We can reopen it if docker considers not to reimplement this feature before it releases > I am authenticated with Dockerhub so I suspect that username= bit is the problem. Manually pulling the image makes it all work fine though so I'm happy enough now. This was reported here too: https://github.com/nektos/act/discussions/1165 _No idea what happens there_
Author
Owner

@ChristopherHX commented on GitHub (Dec 9, 2022):

Here is the code, which uses the reference filter

github.com/nektos/act@d281230cce/pkg/container/docker_images.go (L20-L22)

github.com/nektos/act@d281230cce/pkg/container/docker_images.go (L64-L66)

I don't know how to rewrite it to not make use of this feature.

<!-- gh-comment-id:1344793664 --> @ChristopherHX commented on GitHub (Dec 9, 2022): Here is the code, which uses the reference filter https://github.com/nektos/act/blob/d281230ccef6438085180866e50a026025a05f67/pkg/container/docker_images.go#L20-L22 https://github.com/nektos/act/blob/d281230ccef6438085180866e50a026025a05f67/pkg/container/docker_images.go#L64-L66 I don't know how to rewrite it to not make use of this feature.
Author
Owner

@pindab0ter commented on GitHub (Dec 12, 2022):

If rewriting it so that it doesn't use that filter doesn't work, you could see if the command invocation fails. If it does, you can assume Docker is either not installed or is set up to use the beta feature, in which case you can provide the user with suggestions on how to fix this.

<!-- gh-comment-id:1346527584 --> @pindab0ter commented on GitHub (Dec 12, 2022): If rewriting it so that it doesn't use that filter doesn't work, you could see if the command invocation fails. If it does, you can assume Docker is either not installed or is set up to use the beta feature, in which case you can provide the user with suggestions on how to fix this.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/act#733
No description provided.