bubbles-docker-port-standards

Enforces Docker port allocation and dual-URL binding standards in compose configurations.

1|Updated Mar 17, 2026
One-click install
npx skills add https://github.com/pkirsanov/bubbles --skill bubbles-docker-port-standards-pkirsanov
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: bubbles-docker-port-standards
Source: https://github.com/pkirsanov/bubbles/tree/main/skills/bubbles-docker-port-standards
Command: npx skills add https://github.com/pkirsanov/bubbles --skill bubbles-docker-port-standards-pkirsanov

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Docker setups often break due to port conflicts, unsafe host bindings like localhost, and confusion between container-to-container and host-to-container URLs. This Skill enforces consistent workspace-wide standards so generated or modified Docker configurations avoid these failures. ## Core Features & Use Cases - Port Block Allocation (10k Rule): Prevents conflicts by assigning project-specific port blocks and banning standard ports like 80, 5432, or 6379 on host mappings. - Dual-URL Standard: Generates separate internal (http://<service_name>:<port>) and external (http://127.0.0.1:<port>) URL variables per service. - Operational Maturity Rules: Enforces health checks, depends_on: service_healthy, bounded logging, pinned image tags, and explicit container/network/volume naming. - Use Case: When scaffolding a new microservice stack, apply this Skill to produce a docker-compose.yml where every service has conflict-free ports, correct dual URLs, health checks, and pinned images. ## Quick Start Generate a docker-compose.yml for my project following the Docker port and dual-URL standards with health checks and pinned image tags.

Frequently Asked Questions about bubbles-docker-port-standards

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I avoid port conflicts in docker-compose files?▼

Assign each project a dedicated port block under the 10k Rule and never map standard ports like 80, 5432, or 6379 to the host. Define the project's port block in its setup documentation so allocations stay consistent across services.

How should I configure URLs for Docker services?▼

Use the Dual-URL Standard: generate an internal URL like http://<service_name>:<internal_port> for container-to-container traffic and an external URL like http://127.0.0.1:<host_port> for host access. Never use localhost for external bindings.

Why should I use 127.0.0.1 instead of localhost in Docker configs?▼

Using 127.0.0.1 for external and host bindings avoids resolution ambiguity that localhost can introduce between host and container contexts. The standard mandates 127.0.0.1 for all external bindings to ensure reliable connectivity.

What health check practices should docker-compose services follow?▼

Add health checks for stateful services and use depends_on with condition: service_healthy where supported. Also apply bounded json-file logging with max-size 10m, an unless-stopped restart policy, and pinned image tags instead of :latest.

When does this Docker standards skill not apply?▼

It does not define the actual port numbers for a project; those must be specified in project setup docs to keep the skill project-agnostic. It governs standards for compose and service configuration, not application-level networking logic.