Container Management - Docker
Vapor provides full Docker container management capabilities through an intuitive web interface. This guide covers Docker-specific features and operations.
Prerequisites
- Docker daemon must be installed and running on the system
- User must have appropriate permissions to access Docker socket
Navigating to Docker Management
- From the main menu, click on Docker
- The Docker dashboard opens with four main tabs:
- Containers
- Images
- Networks
- Volumes
Containers
The Containers tab displays all Docker containers on the system.
Container List View
Each container shows:
- Container name and ID
- Image used
- Status (Running, Stopped, Paused, etc.)
- Created time
- Ports mapping
- Resource usage (CPU, Memory)
Managing Containers
Starting/Stopping Containers
- Click the Start button to start a stopped container
- Click the Stop button to gracefully stop a running container
- Click the Restart button to restart a container
Creating a New Container
- Click the Create Container button
- In the drawer that opens:
- Image: Select or enter the image name
- Name: Provide a container name (optional)
- Command: Override the default command (optional)
- Environment Variables: Add key-value pairs
- Ports: Map container ports to host ports
- Volumes: Mount host directories or volumes
- Networks: Select networks to connect
- Restart Policy: Set restart behavior
- Click Create to launch the container
Container Actions
Click the three-dot menu for additional actions:
- Logs: View container logs in real-time
- Exec: Open a terminal session inside the container
- Inspect: View detailed container configuration
- Stats: Monitor real-time resource usage
- Pause/Unpause: Temporarily suspend container execution
- Remove: Delete the container (must be stopped first)
Container Details
Click on a container row to open the details drawer:
Overview Tab
- Container ID and name
- Image information
- Status and health check
- Created and started times
- Command and entrypoint
- Working directory
Logs Tab
- Real-time log streaming
- Filter by timestamp
- Search within logs
- Download logs
Terminal Tab
- Interactive shell access
- Multiple shell options (bash, sh)
- Full terminal emulation
Stats Tab
- CPU usage graph
- Memory usage graph
- Network I/O
- Disk I/O
Inspect Tab
- Full JSON configuration
- Environment variables
- Mounts and volumes
- Network settings
Images
The Images tab manages Docker images.
Image List
Shows all available images with:
- Repository and tag
- Image ID
- Size
- Created date
- Number of containers using the image
Image Operations
Pulling Images
- Click Pull Image
- Enter the image name (e.g.,
nginx:latest
) - Optional: Configure registry authentication
- Click Pull to download
Building Images
- Click Build Image
- Upload or paste Dockerfile content
- Set build context (if needed)
- Configure build arguments
- Click Build
Image Actions
- Run: Create and start a container from the image
- Tag: Add additional tags to the image
- Push: Upload image to a registry
- Remove: Delete the image (no containers must be using it)
- Inspect: View image layers and configuration
- History: See image build history
Networks
The Networks tab manages Docker networks.
Network Types
- bridge: Default network for containers
- host: Use host networking directly
- none: No networking
- overlay: Multi-host networking (Swarm mode)
- macvlan: Assign MAC addresses to containers
Creating a Network
- Click Create Network
- Configure:
- Name: Network identifier
- Driver: Select network type
- Subnet: IP range (e.g., 172.20.0.0/16)
- Gateway: Gateway IP address
- Options: Driver-specific options
- Click Create
Network Management
- Connect: Attach containers to the network
- Disconnect: Remove containers from the network
- Inspect: View network configuration and connected containers
- Remove: Delete the network (must have no connected containers)
Volumes
The Volumes tab manages Docker volumes for persistent data.
Creating a Volume
- Click Create Volume
- Enter:
- Name: Volume identifier
- Driver: Volume driver (default: local)
- Options: Driver-specific options
- Click Create
Volume Operations
- Inspect: View volume details and mount point
- Browse: Explore volume contents (if supported)
- Remove: Delete the volume (must not be in use)
Using Volumes
Volumes can be mounted to containers during creation:
- Named volumes:
volume-name:/container/path
- Bind mounts:
/host/path:/container/path
- Anonymous volumes:
/container/path
Docker Compose
Managing Compose Projects
- Navigate to Docker > Compose
- View running compose projects
- Upload docker-compose.yml files
- Start/stop entire stacks
Best Practices
- Resource Limits: Set memory and CPU limits for containers
- Health Checks: Configure health checks for critical services
- Logging: Use appropriate log drivers for production
- Volumes: Use volumes for persistent data, not bind mounts in production
- Networks: Create custom networks for multi-container applications
- Security: Don't run containers as root unless necessary
- Cleanup: Regularly prune unused images, containers, and volumes
Troubleshooting
Container Won't Start
- Check logs for error messages
- Verify image exists and is not corrupted
- Ensure required ports are not already in use
- Check resource constraints
Network Connectivity Issues
- Verify containers are on the same network
- Check firewall rules
- Inspect network configuration
- Test DNS resolution inside containers
Volume Mount Problems
- Verify host path exists and has correct permissions
- Check SELinux context (on systems with SELinux)
- Ensure volume driver is properly configured
Performance Issues
- Monitor resource usage with stats
- Check for resource limits
- Review log verbosity
- Consider using volume mounts instead of bind mounts