Split .docker config into separate directories following platform conventions
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 6.1k
- Forks
- 2.2k
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 43
Description
Split the current .docker directory into separate directories for configuration, data, cache, and runtime, following XDG conventions on Unix and sensible platform-specific paths on Windows and macOS.
Example:
| Purpose | Unix XDG | Unix w/o XDG | Unix System Level | Windows User Level | Windows System Level | macOS User Level | macOS System Level |
|---|---|---|---|---|---|---|---|
| Configuration | $XDG_CONFIG_HOME/docker |
~/.docker |
/etc/docker/cli |
%APPDATA%\Docker |
%PROGRAMDATA%\Docker |
~/Library/Preferences/Docker |
/Library/Preferences/Docker |
| Data | $XDG_DATA_HOME/docker |
~/.docker |
/usr/local/share/docker |
%LOCALAPPDATA%\Docker |
%PROGRAMDATA%\Docker |
~/Library/Application Support/Docker |
/Library/Application Support/Docker |
| Cache | $XDG_CACHE_HOME/docker |
~/.docker |
/var/cache/docker |
%LOCALAPPDATA%\Docker\Cache |
%PROGRAMDATA%\Docker\Cache |
~/Library/Caches/Docker |
/Library/Caches/Docker |
| Runtime | $XDG_RUNTIME_DIR/docker |
~/.docker |
/run/docker/cli |
%LOCALAPPDATA%\Docker\Run |
%PROGRAMDATA%\Docker\Run |
? |
? |
Are these paths sensible, do they crash in any way with the docker daemon?
Any concerns around backward compatibility?
Would love to create a PR.
related: #2738, #2423
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the current .docker directory and the related issues #2738 and #2423. Compare the proposed Unix, Windows, and macOS paths, then determine whether they interact safely with the Docker daemon and how existing paths remain compatible. Done means the conventions, migration or fallback behavior, and compatibility concerns are resolved clearly enough for a PR.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, go
- Domain
- cli, operating-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100