Task Management
Vikunja
Ứng dụng quản lý công việc tự host, hỗ trợ kanban, list và calendar, thay thế Todoist.
Ghi chú review
Nhẹ và nhanh, phù hợp cho cá nhân hoặc team nhỏ. Có thể dùng SQLite cho đơn giản hoặc PostgreSQL cho production.
Hướng dẫn deploy
Chạy một container Docker duy nhất, frontend và API gộp trong một binary.
- Tạo thư mục dữ liệu cho Vikunja.
- Chạy container với volume mount cho database và files.
- Truy cập web UI và tạo tài khoản đầu tiên.
- Cấu hình mailer nếu muốn gửi email thông báo.
- Tạo projects, tasks và mời cộng tác viên.
Backup:Backup file database (SQLite hoặc PostgreSQL) và thư mục files chứa attachments.
Copy để chạy trên server
Dùng từng block riêng: lưu compose trước, hoặc copy script bash để tạo file và chạy container.
docker-compose.ymlyaml
services:
vikunja:
image: vikunja/vikunja:latest
container_name: vikunja
volumes:
- ./files:/app/vikunja/files
- ./db:/app/vikunja/db
ports:
- "3456:3456"
environment:
VIKUNJA_SERVICE_PUBLICURL: "http://SERVER_IP:3456"
restart: unless-stoppedsetup.shbash
#!/usr/bin/env bash
set -euo pipefail
sudo mkdir -p /opt/vikunja
sudo chown "$USER":"$USER" /opt/vikunja
cd /opt/vikunja
cat > docker-compose.yml <<'COMPOSE'
services:
vikunja:
image: vikunja/vikunja:latest
container_name: vikunja
volumes:
- ./files:/app/vikunja/files
- ./db:/app/vikunja/db
ports:
- "3456:3456"
environment:
VIKUNJA_SERVICE_PUBLICURL: "http://SERVER_IP:3456"
restart: unless-stopped
COMPOSE
docker compose up -d
echo "Vikunja is running on http://SERVER_IP:3456"Stack
GoVue.jsSQLite/PostgreSQL