Dockerfile Expose Example (Premium · Choice)
You can expose ports using TCP (default) or UDP.
Here is how we use EXPOSE to signal that port 3000 is the gateway to this app: dockerfile dockerfile expose example
Either tcp or udp . If you don't specify one, Docker defaults to TCP . A Real-World Dockerfile EXPOSE Example You can expose ports using TCP (default) or UDP
# Start from a slim Python base FROM python:3.11-slim # Set the working directory WORKDIR /app # Run a simple Python HTTP server on port 8000 CMD ["python3", "-m", "http.server", "8000"] # Inform Docker that the app inside listens on 8000 EXPOSE 8000 Use code with caution. Copied to clipboard The Difference: EXPOSE vs. -p (Publish) A Real-World Dockerfile EXPOSE Example # Start from
In the world of containerization, communication is everything. If you build a brilliant web application but can't reach it from your browser, it’s essentially a digital island. The EXPOSE instruction in a Dockerfile is one of the most fundamental—yet often misunderstood—tools for managing how your containers signal their networking needs.
FROM alpine:latest RUN apk add --no-cache ca-certificates COPY --from=builder /src/myapp /myapp