เข้าถึงโดเนติค
- เปิด browser และไปที่:
https://<SERVER_IP> - คาดว่าจะมีคำเตือน SSL ของเบราว์เซอร์ (ใบรับรองที่ลงนามด้วยตนเอง)
- สร้างบัญชีใหม่ในการเข้าชมครั้งแรก
ไฟล์และไดเรกทอรีที่สำคัญ
- ไดเรกทอรีติดตั้ง:
/opt/donetick - Dockerเขียน:
/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/
จัดการบริการ
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 ของ server
2. อัพเดต public_host ในการกำหนดค่า Donetick (/opt/donetick/config/selfhosted.yaml):
public_host: "https://yourdomain.com"
3. เริ่มบริการ Donetick ใหม่:
cd /opt/donetick/
docker compose restart
4. แก้ไขการกำหนดค่า Nginx และแทนที่ทั้งสองอย่าง server_name <IP>; กับโดเมนของคุณ (<yourdomain.com>) สำหรับทั้ง HTTP (port 80) และ HTTPS (port 443) blocks:
vim /etc/nginx/sites-available/donetick
5. ติดตั้ง Certbot:
apt install -y certbot python3-certbot-nginx
6. รันคำสั่งต่อไปนี้เพื่อสร้างใบรับรอง Let’s Encrypt ที่ใช้งานได้:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
7. แทนที่เส้นทาง SSL ในการกำหนดค่า Nginx:
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. เปิด browser และไปที่: https://yourdomain.com
ข้อกำหนดของแอพมือถือ
- หากคุณวางแผนที่จะใช้แอป Android หรือ iOS อินสแตนซ์ Donetick ของคุณต้องสามารถเข้าถึงได้แบบสาธารณะและให้บริการผ่าน HTTPS ด้วยใบรับรองที่ถูกต้อง แอพมือถือจะไม่เชื่อมต่อกับที่อยู่ HTTP ภายในเครื่องเท่านั้นหรือไม่ปลอดภัย
- ตั้งค่าโดเมนและกำหนดค่า SSL โดยใช้ Certbot และ Let's Encrypt ตามที่อธิบายไว้ข้างต้น