Docker
Beginner
1 min read
Host Networking and Port Publishing
Example
# Host networking (Linux only)
docker run -d \
--name api-host \
--network host \
-e PORT=3000 \
myapp:latest
# Container listens directly on host:3000, no -p needed
# Bind to all interfaces (default, publicly accessible)
docker run -d -p 3000:3000 myapp:latest
# Bind to localhost only (proxied by Nginx)
docker run -d -p 127.0.0.1:3000:3000 myapp:latest
# Map multiple ports
docker run -d \
-p 127.0.0.1:3000:3000 \
-p 127.0.0.1:9229:9229 \
myapp:dev
# Random host port (Docker assigns it)
docker run -d -p 3000 myapp:latest
docker port <container_id>
# Inspect port mappings
docker ps --format "table {{.Names}}\t{{.Ports}}"
docker port api
# Fully isolated container (no network)
docker run --rm --network none alpine ping google.com
Related Resources
Docker Reference
Complete tag & property list
Docker How-To Guides
Step-by-step practical guides
Docker Exercises
Practice what you've learned
More in Docker