Docker Management
AIVory Architect includes a visual Docker Compose designer for creating, editing, and managing containerized applications directly from your IDE.
- Visual designer for Docker Compose stacks with drag-and-drop services
- 8 pre-built templates for common architectures (LAMP, ELK, Microservices, etc.)
- Container lifecycle management including start, stop, logs, and exec
- Remote Docker hosts supported via SSH (JetBrains)
Requirements
Before using Docker features, ensure you have the following installed:
Verify Your Setup
Run these commands to check your Docker installation:
docker --version
docker compose version
Both commands should return version information without errors.
Visual Compose Designer
Design Docker Compose stacks visually by dragging services onto a canvas and connecting them.
Adding Services
- Open the Docker tab in Architect
- Drag a service from the palette onto the canvas
- Click the service to edit properties:
- Image and tag
- Port mappings
- Environment variables
- Volume mounts
- Resource limits
- Health checks
Connection Types
Connect services to define relationships:
Generating docker-compose.yml
- Design your stack visually
- Click Generate Compose
- Review the generated YAML
- File is saved to your project directory
Supported Compose Options
The generator supports all standard Docker Compose options including:
- Build configuration (context, dockerfile, args)
- Deploy settings (replicas, resources)
- Health checks
- Logging configuration
- Security options
- Network and volume definitions
Pre-built Templates
Start quickly with 8 ready-to-use templates:
To use a template:
- Open the Docker tab
- Click Templates
- Select a template
- Customize as needed
Container Management
Lifecycle Operations
Viewing Logs
- Select a container in the tree view
- Click View Logs
- Logs stream in real-time
Options:
- Tail last N lines
- Show timestamps
- Follow new output
Executing Commands
Run commands inside a container:
- Select a running container
- Click Exec
- Enter command (e.g.,
sh,bash,ls -la) - Interactive terminal opens
bash or sh to open an interactive shell for debugging inside containers.
Container Stats
View real-time resource usage:
- CPU percentage
- Memory usage
- Network I/O
- Block I/O
Docker Compose Operations
Manage entire stacks with compose commands:
| Command | Description |
|---|---|
| Up | Start all services (with build option) |
| Down | Stop and remove containers |
| Build | Build or rebuild services |
| Restart | Restart all services |
| Scale | Change number of replicas |
| Logs | View logs from all services |
Stack Status
The tree view shows:
- Running containers (green indicator)
- Stopped containers (gray indicator)
- Compose project groupings
- Service health status
Image Management
List Images
View all local Docker images with:
- Repository and tag
- Image ID
- Size
- Creation date
Pull Images
Download images from registries:
- Click Pull Image
- Enter image name and tag (e.g.,
nginx:latest) - Monitor download progress
Build Images
Build from Dockerfile:
- Click Build Image
- Select Dockerfile location
- Enter tag name
- Optionally add build arguments
- Monitor build output
Remote Docker Hosts (JetBrains)
Connect to Docker running on remote machines via SSH.
Setup
- Open Docker tab
- Click Host dropdown
- Select Add Remote Host
- Enter SSH connection details:
- Host:
user@hostname - Port: 22 (default)
- Authentication method
- Host:
Switching Hosts
Toggle between local and remote Docker:
- Click Host dropdown
- Select the target host
- All operations now execute on that host
Working with Existing Projects
Architect automatically detects Docker files in your project:
docker-compose.yml/docker-compose.yamldocker-compose.*.yml(override files)Dockerfile
When you open a project with compose files:
- The designer visualizes the stack
- Services appear as nodes on the canvas
- Connections show relationships
- Edit visually or in YAML
Layout Persistence
Node positions are saved automatically to .aivory/docker-positions.json. Your layout is preserved across IDE sessions.
Troubleshooting
Docker Not Found
- Verify Docker is installed:
docker --version - Check Docker daemon is running
- Add Docker to your PATH
Permission Denied
On Linux, add your user to the docker group:
sudo usermod -aG docker $USER
Log out and back in for changes to take effect.
Compose File Not Detected
- Ensure file is named
docker-compose.ymlordocker-compose.yaml - Check file is in workspace root or subdirectory
- Verify YAML syntax is valid
Remote Connection Failed (JetBrains)
- Check SSH connectivity:
ssh user@host - Verify Docker is installed on remote host
- Ensure remote user has Docker permissions