เข้าถึง Donetick
- เปิดเบราว์เซอร์แล้วไปที่:
https://<SERVER_IP> - การแจ้งเตือน SSL ในเบราว์เซอร์เป็นเรื่องปกติ (self-signed certificate)
- สร้างบัญชีใหม่เมื่อเข้าใช้งานครั้งแรก
ไฟล์และไดเรกทอรีสำคัญ
- ไดเรกทอรี่การติดตั้ง:
/opt/donetick - Docker Compose:
/opt/donetick/docker-compose.yml - ไฟล์คอนฟิก:
/opt/donetick/config/selfhosted.yaml - ไดเรกทอรี่ข้อมูล:
/opt/donetick/data - ฐานข้อมูล SQLite:
/opt/donetick/data/donetick.db - Nginx config
/etc/nginx/sites-available/donetick - ใบรับรอง SSL:
/etc/nginx/ssl/
จัดการ Service
cd /opt/donetick
# Start
docker compose up -d
# Stop
docker compose down
# Restart container only
docker restart donetick
# Logs
docker logs -f donetick
ปิดการลงทะเบียนผู้ใช้ (ไม่บังคับ)
แก้ไขการตั้งค่า (/opt/donetick/config/selfhosted.yaml):
is_user_creation_disabled: true
จากนั้นเริ่มต้นใหม่:
cd /opt/donetick && docker compose restart donetick
เปิดใช้งาน SSL พร้อมโดเมน
1. ชี้โดเมนของคุณไปที่ IP ของเซิร์ฟเวอร์
2. อัปเดต public_host ในการกำหนดค่า Donetick (/opt/donetick/config/selfhosted.yaml):
public_host: "https://yourdomain.com"
3. รีสตาร์ท Donetick service:
cd /opt/donetick/
docker compose restart
4. แก้ไขการตั้งค่า Nginx และแทนที่ทั้งสอง server_name <IP>; ด้วยโดเมนของคุณ (<yourdomain.com>) สำหรับทั้งบล็อก HTTP (port 80) และ HTTPS (port 443):
vim /etc/nginx/sites-available/donetick
๕. ติดตั้ง Certbot:
apt install -y certbot python3-certbot-nginx
6. รันคำสั่งต่อไปนี้เพื่อสร้าง Let's Encrypt certificate ที่ถูกต้อง:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
7. แทนที่พาธ SSL ใน Nginx config:
vim /etc/nginx/sites-available/donetick
# Before:
# ssl_certificate /etc/nginx/ssl/donetick.crt;
# ssl_certificate_key /etc/nginx/ssl/donetick.key;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
8. รีสตาร์ท Nginx เพื่อใช้การเปลี่ยนแปลง:
systemctl restart nginx
9. เปิดเบราว์เซอร์และเข้าไปที่: https://yourdomain.com
ข้อกำหนดสำหรับแอปมือถือ
- หากต้องการใช้แอป Android หรือ iOS อินสแตนซ์ Donetick ของคุณต้องเข้าถึงได้จากภายนอกและให้บริการผ่าน HTTPS พร้อม certificate ที่ถูกต้อง แอปมือถือจะไม่เชื่อมต่อกับที่อยู่ HTTP แบบ local-only หรือที่ไม่ปลอดภัย
- ตั้งค่าโดเมนและกำหนดค่า SSL โดยใช้ Certbot และ Let's Encrypt ตามที่อธิบายไว้ข้างต้น