`docker login` Fails on Windows Larger Runners
Description
I’m encountering an issue where docker login fails on larger runners configured with windows-latest, but works without any issues on standard runners.
Error saving credentials: error storing credentials - err: exit status 1, out: `A specified logon session does not exist. It may already have been terminated.`
This suggests the problem may be related to the Docker credential storage mechanism on the custom runner environment.
The issue initially occurred on 12/12/24, after the pre-release of 20241211, and at that time, it was also failing on standard runners. In my case, the workaround was to use oras login instead.
Platforms affected
- [ ] Azure DevOps
- [ ] GitHub Actions - Standard Runners
- [X] GitHub Actions - Larger Runners
Runner images affected
- [ ] Ubuntu 20.04
- [ ] Ubuntu 22.04
- [ ] Ubuntu 24.04
- [ ] macOS 12
- [ ] macOS 13
- [ ] macOS 13 Arm64
- [ ] macOS 14
- [ ] macOS 14 Arm64
- [ ] macOS 15
- [ ] macOS 15 Arm64
- [X] Windows Server 2019
- [X] Windows Server 2022
Image version and build link
Current runner version: '2.321.0' Operating System Microsoft Windows Server 2019 10.0.17763 Datacenter
Runner Image Image: windows-2019 Version: 20241211.1.0 https://github.com/actions/runner-images/releases/tag/win22%2F20241211.1
Current runner version: '2.321.0' Operating System Microsoft Windows Server 2022 10.0.20348 Datacenter
Runner Image Image: windows-2022 Version: 20241211.1.0 https://github.com/actions/runner-images/releases/tag/win22%2F20241211.1
Is it regression?
Yes, it was working till: 20241201.2.0
Expected behavior
docker-login correctly stores credentials and authenticates to ghcr.io
Actual behavior
docker login fails with the following:
Error: Error saving credentials: error storing credentials - err: exit status 1, out:
A specified logon session does not exist. It may already have been terminated.
Repro steps
- Create new
GitHub-hosted runneron Windows x64 platform - Set-up a job for that runner and try to
docker login
runs-on: serv22
steps:
- name: Docker Login
run: |
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io --username ${{ github.actor }} --password-stdin
or
runs-on: serv22
steps:
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
Hi @Epgor ,Thank you for bringing this issue to our attention. We are looking into this issue and will update you on this issue after investigating.
@Epgor FYI a few of us have also run into this issue, and we're discussing workarounds over in actions/runner-images#11172.
Hi All, the changes that causing the issue is reverted. thanks. closing the issue.