Building & Publishing Images
Build custom Docker images from your Dockerfile and push them to public or private container registries like Docker Hub or GitHub Container Registry.
1. Creating `.dockerignore`
Just like .gitignore, create a .dockerignore file in your project root to prevent bloated local files (e.g. node_modules, logs, .git) from being copied into the build context:
# .dockerignore node_modules npm-debug.log .git .gitignore .env dist coverage
2. Building an Image (`docker build`)
# Build image with tag (-t username/image-name:version) docker build -t myusername/myapp:v1.0 . # Build specifying a custom Dockerfile path docker build -f Dockerfile.prod -t myusername/myapp:latest .
3. Publishing to Docker Hub (`docker push`)
# 1. Login to Docker Hub docker login # 2. Push image to repository docker push myusername/myapp:v1.0 docker push myusername/myapp:latest
Next Up
Learn container lifecycle options: background mode (-d), interactive shell (-it), resource limits, and docker inspect.
Next Lesson: Container Lifecycle & Options →