bugtalk
Docker errors, translated instantly. Install once. Zero config. Zero new habits.
$ docker run -p 80:80 nginx
docker: Error response from daemon: Bind for 0.0.0.0:80 failed: port is already allocated.
🔧 [PORT_CONFLICT] Port 80 is already in use by another process
💡 Fix: lsof -ti:80 | xargs kill -9
⚠️ Risk: medium — review before running
Install
pip install bugtalk
bugtalk setup
Restart your shell. Done.
How it works
bugtalk setup adds a thin Python wrapper to the front of your PATH. Every docker run, start, exec, build, and compose up command passes through it invisibly. If the command fails, bugtalk matches the error against a library of known patterns and prints a plain-English fix.
- Exit codes are always preserved → CI/CD pipelines are unaffected
- Interactive commands (
docker exec -it,docker run -it) are passed through with no capture → TTY sessions work normally - The real Docker binary is stored as an absolute path during setup → no infinite recursion, no PATH games
- Works offline — the pattern library is local
- Updates weekly in a background thread (non-blocking, never adds latency)
Commands
| Command | What it does |
|---|---|
bugtalk setup |
Install wrapper, configure PATH |
bugtalk unsetup |
Remove everything, restore original Docker |
bugtalk status |
Show version, pattern count, last update |
bugtalk update |
Pull latest patterns from GitHub now |
bugtalk report |
Open a pre-filled GitHub issue for an unknown error |
Supported platforms
| Platform | Status |
|---|---|
| macOS (Intel + Apple Silicon) | ✅ Supported |
| Linux (Ubuntu, Debian, Fedora, Arch) | ✅ Supported |
| Windows (WSL2) | ✅ Supported |
| Windows native | ❌ Not in V1 |
Shell support: bash, zsh, fish, and any shell that sources ~/.profile.
Error patterns (v1.0, 25 patterns)
| ID | Matches |
|---|---|
PORT_CONFLICT |
Port already allocated / address in use |
DAEMON_NOT_RUNNING |
Docker daemon not started |
IMAGE_NOT_FOUND |
Image not pulled locally |
VOLUME_PERMISSION |
Permission denied on mounted volume |
NETWORK_CONFLICT |
Network already exists |
CONTAINER_ALREADY_RUNNING |
Container already started |
DISK_SPACE |
No space left on device |
INVALID_TAG |
Bad image reference format |
PULL_RATE_LIMIT |
Docker Hub rate limit hit |
AUTH_REQUIRED |
Registry login needed |
COMPOSE_ORPHAN |
Orphan containers from old compose project |
COMPOSE_VERSION |
Obsolete version: field in compose file |
CONTEXT_NOT_FOUND |
Unknown docker context |
BUILD_NO_DOCKERFILE |
Dockerfile missing from build context |
BUILD_ARG_MISSING |
--build-arg not passed for declared ARG |
PORT_FORMAT_INVALID |
Malformed -p flag |
EXEC_NOT_RUNNING |
exec on a stopped container |
EXEC_CMD_NOT_FOUND |
Binary not in container PATH |
LAYER_CACHE_MOUNT |
BuildKit not enabled |
MANIFEST_PLATFORM |
No image for this CPU architecture |
DNS_RESOLUTION |
DNS failure inside container |
COMPOSE_PORT_CONFLICT |
Compose service port conflict |
HEALTHCHECK_FAIL |
Container healthcheck failing |
SECCOMP_DENIED |
System call blocked by seccomp |
CGROUP_OOM |
Container OOM-killed |
Uninstall
bugtalk unsetup
No original Docker files are ever modified. Uninstall is clean.
License
MIT
Metadata
Release files for bugtalk 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| bugtalk-1.0.0.tar.gz | 17.2 kB | Without provenance | Details for bugtalk-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| bugtalk-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for bugtalk-1.0.0-py3-none-any.whl |
Total release size: 33.7 kB
Release files / bugtalk-1.0.0.tar.gz
| Download URL | bugtalk-1.0.0.tar.gz |
|---|---|
| Size | 17.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0a61b4ac4506e7f0a1d569b942476a03a015b2622154c7a16b0185c8c9b0b17c
|
|
BLAKE2b-256 checksum How to use checksums |
6ad01471cd347b9cba7a3d1bd86682179871e5db713a43819181fb6cb29dbc3a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Release files / bugtalk-1.0.0-py3-none-any.whl
| Download URL | bugtalk-1.0.0-py3-none-any.whl |
|---|---|
| Size | 16.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4c10e11e8d6a63f696831fe3765fe4a10bc9c4143bab34ccc9b3a4f6dacc611f
|
|
BLAKE2b-256 checksum How to use checksums |
53e31495785f4b76dcb7c1fd98af307d55b71aa68d7b6b2071a0e3d1b84c146c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Security for bugtalk 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.