Deploy and configure a web-based file manager and system administration tool for VPS servers with Docker container control, file operations, and system monitoring.
Deploy a web-based file manager and system administration tool for VPS servers. Provides file management, Docker container control, and basic system operations through a browser interface with authentication.
Sets up a Go-based web application that allows you to manage VPS server files, control Docker containers, and monitor system resources through a clean browser interface. Includes session-based authentication, file operations (read/write/upload/download), Docker container management, and system information display.
When a user requests to set up or work with this VPS file manager, follow these steps:
- `cmd/server/main.go` - Application entry point
- `internal/config/` - Configuration management
- `internal/auth/` - Authentication logic
- `internal/handlers/` - HTTP route handlers
- `web/` - Frontend assets (HTML, CSS, JS)
- `configs/config.yaml` - Configuration file
- Server host/port (default `0.0.0.0:8080`)
- Admin username and password hash (use SHA256)
- Session TTL in minutes
- Root file path for file operations
Run these commands for local testing:
```bash
go build -o filemanager ./cmd/server
./filemanager
```
Access the web interface at `http://localhost:8080`
Deploy using Docker Compose:
```bash
docker compose up -d --build
```
**Important Docker requirements:**
To rebuild after changes:
```bash
docker compose down && docker compose up -d --build
```
**Backend (Go):**
**Frontend (vanilla JS):**
**Authentication:**
**File Operations (requires auth):**
**Docker Management (requires auth):**
**System Operations (requires auth):**
**Adding new file operation handlers:**
**Modifying Docker operations:**
**Changing authentication logic:**
**Example 1: Initial deployment**
```
User: "Deploy the VPS file manager on my server"
Assistant: *Clones repo, configures config.yaml with secure password hash, runs docker compose up -d --build, verifies deployment*
```
**Example 2: Add new file operation**
```
User: "Add ability to rename files"
Assistant: *Adds handler in files.go, registers route in router.go, updates frontend api.js and app.js, rebuilds and tests*
```
**Example 3: Troubleshoot Docker access**
```
User: "Docker container list is empty but I have running containers"
Assistant: *Checks docker.sock mount in docker-compose.yml, verifies socket permissions, tests docker CLI access from container*
```
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/vps-file-manager-setup/raw