รันบนเซิร์ฟเวอร์
Celerp ทำงานบนฮาร์ดแวร์ของคุณเองเสมอ แอปเดสก์ท็อปเปลี่ยนคอมพิวเตอร์ของคุณให้เป็นเซิร์ฟเวอร์ได้ในคลิกเดียว คู่มือนี้สำหรับกรณีที่อยากรันบนเซิร์ฟเวอร์ Linux แยกต่างหากที่เปิดตลอดเวลา (VPS หรือเซิร์ฟเวอร์ที่บ้าน) เพื่อให้ทั้งสำนักงานเข้าใช้ได้ตลอด 24 ชั่วโมง โดยใช้ pip install celerp ชุดเดียวกับบนเดสก์ท็อป ใช้ได้กับเซิร์ฟเวอร์ Linux ทุกตัว
ข้อกำหนด
- Python 3.11+
- Postgres 14+ (กำลังทำงานและเข้าถึงได้)
- ผู้ใช้ที่มีสิทธิ์
sudo(จำเป็นสำหรับcelerp initเพื่อสร้างผู้ใช้และฐานข้อมูล Postgres)
ติดตั้งและเริ่มต้นใช้งาน
pip install celerp
celerp init
celerp init เป็นคำสั่งแบบโต้ตอบ โดยจะ:
- ขอ URL การเชื่อมต่อ Postgres (หรือยอมรับค่าเริ่มต้น:
postgresql+asyncpg://celerp:celerp@localhost:5432/celerp) - สร้างผู้ใช้และฐานข้อมูล Postgres (ผ่าน
sudo -u postgres psql) - สร้าง JWT secret
- รัน migration
- เขียนไฟล์ตั้งค่า (
~/.celerp/config.toml)
เริ่มเซิร์ฟเวอร์
celerp start
คำสั่งนี้จะเริ่มสองโพรเซส:
- เซิร์ฟเวอร์ API บนพอร์ต
8000 - เซิร์ฟเวอร์ UI บนพอร์ต
8080
เปิด http://your-server-ip:8080 ในเบราว์เซอร์เพื่อเข้าถึง Celerp
รันเป็นบริการ systemd
เพื่อให้ Celerp ทำงานต่อหลังออกจากระบบและเริ่มอัตโนมัติเมื่อรีบูต:
sudo tee /etc/systemd/system/celerp.service <<EOF
[Unit]
Description=Celerp ERP
After=network.target postgresql.service
[Service]
Type=simple
User=$USER
ExecStart=$(which celerp) start
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable --now celerp
Reverse proxy (nginx + HTTPS)
ถ้าต้องการเปิดให้เข้าถึง Celerp ผ่านโดเมนด้วย HTTPS ให้ proxy ทั้ง UI และ API ผ่าน nginx:
server {
server_name erp.yourdomain.com;
# UI
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
# API
location /api/ {
proxy_pass http://localhost:8000/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/erp.yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/erp.yourdomain.com/privkey.pem;
}
ใช้ Certbot เพื่อขอใบรับรอง SSL ฟรี
การอัปเกรด
celerp upgrade
คำสั่งนี้จะรัน pip install --upgrade celerp แล้วรัน migration ที่ค้างอยู่ให้อัตโนมัติ
หลายผู้ใช้ผ่าน LAN
ถ้าคุณรัน Celerp บนเครื่องในเครือข่ายภายในของออฟฟิศ ผู้ใช้คนอื่นในเครือข่ายเดียวกันเข้าถึงได้จากเบราว์เซอร์ที่ http://your-machine-ip:8080 อย่าลืมตั้งไฟร์วอลล์ให้อนุญาตการเชื่อมต่อขาเข้าที่พอร์ต 8000 และ 8080