Modern, web-based UI for managing Docker containers, services, and projects.
1.6K
Modern, web-based UI for managing Docker containers, services, and projects. Built with Vue.js 3 + Vuetify 3 + Node.js + Express.
version: "3.8"
services:
stackvo-ui:
image: stackvo/stackvo-ui:latest
container_name: stackvo-ui
restart: unless-stopped
ports:
- "80:80"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
NODE_ENV: production
docker-compose up -d
docker run -d \
--name stackvo-ui \
-p 80:80 \
-v /var/run/docker.sock:/var/run/docker.sock \
-e NODE_ENV=production \
stackvo/stackvo-ui:latest
Access the UI at http://localhost
| Variable | Default | Description |
|---|---|---|
NODE_ENV | production | Node.js environment |
STACKVO_ROOT | /app | Stackvo root directory |
PROJECTS_DIR | /app/projects | Projects directory |
GENERATED_DIR | /app/generated | Generated configs directory |
HOST_UID | 1000 | Host user ID for file ownership |
HOST_GID | 1000 | Host group ID for file ownership |
80 - Nginx (HTTP)| Volume | Description | Required |
|---|---|---|
/var/run/docker.sock | Docker socket for API access | ā Yes |
/app/projects | Projects directory | ā ļø Optional |
/app/generated | Generated configs | ā ļø Optional |
/app/logs | Application logs | ā ļø Optional |
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā Nginx (Port 80) ā
ā āāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāā ā
ā ā Frontend ā ā Backend ā ā
ā ā (Vue.js 3) ā ā (Node.js + ā ā
ā ā (Vuetify 3) ā ā Express) ā ā
ā āāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāā ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā ā
ā āāāāāāāāāāāā
ā ā
Static Files Docker API
(dist/) (/var/run/docker.sock)
latest - Latest stable release (main branch)develop - Development branchv1.0.0 - Specific version (semantic versioning)v1.0 - Major.minor version# Clone repository
git clone https://github.com/stackvo/stackvo-ui.git
cd stackvo-ui
# Build image
docker build -t stackvo-ui:local .
# Run container
docker run -d -p 80:80 -v /var/run/docker.sock:/var/run/docker.sock stackvo-ui:local
# Install dependencies
npm install
# Start development server
npm run dev
# Frontend: http://localhost:5173
# Backend: http://localhost:3000
GET /api/projects - List all projectsPOST /api/projects - Create new projectPOST /api/projects/:name/build - Build projectPOST /api/projects/:name/start - Start projectPOST /api/projects/:name/stop - Stop projectDELETE /api/projects/:name - Delete projectGET /api/services - List all servicesPOST /api/services/:name/enable - Enable servicePOST /api/services/:name/disable - Disable serviceGET /api/docker/containers - List containersGET /api/docker/images - List imagesGET /api/docker/networks - List networksGET /api/docker/volumes - List volumesGET /api/tools - List available toolsPOST /api/tools/:name/enable - Enable toolPOST /api/tools/:name/disable - Disable toolterminal:input - Send input to terminalterminal:resize - Resize terminalbuild:progress - Build progress updatesbuild:success - Build completed successfullybuild:error - Build failedterminal:output - Terminal output dataMIT License - see LICENSEā file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
For support, please open an issue on GitHub or contact the Stackvo team.
Content type
Image
Digest
sha256:d3191b8baā¦
Size
137.8 MB
Last updated
7 months ago
docker pull stackvo/stackvo-ui