1. เชื่อมต่อ SSH ไปยังเซิร์ฟเวอร์ของคุณ
ssh root@<server-ip>
2. ค้นหาข้อมูลการเข้าสู่ระบบ
- ผู้ใช้เริ่มต้น:
django - รหัสผ่านถูกบันทึกไว้ใน:
/root/.cloudzy-creds
(ไม่บังคับ) เปลี่ยนรหัสผ่านเริ่มต้น: passwd django
3. เปลี่ยนไปใช้บัญชีผู้ใช้แอป
su - django
4. PostgreSQL (ไม่บังคับ)
หากติดตั้ง PostgreSQL แล้ว ให้ตั้งค่าฐานข้อมูลและผู้ใช้ (ตัวอย่าง):
sudo -u postgres psql
CREATE DATABASE <db>;
CREATE USER <user> WITH PASSWORD <password>;
GRANT ALL PRIVILEGES ON DATABASE <db> TO <user>;
q
จากนั้นอัปเดต settings.py DATABASES กับเจ้าภาพ localhostชื่อฐานข้อมูล ชื่อผู้ใช้ และรหัสผ่าน เรียกใช้ python manage.py migrate.
5. ปรับใช้แอปพลิเคชันของคุณ
แอปพลิเคชัน Flask ตัวอย่างใช้งานได้แล้วและสามารถเข้าถึงได้ที่: http://<server-ip
วิธีการเผยแพร่แอปพลิเคชันของคุณเอง:
- เข้าไปที่ไดเร็กทอรีแอปพลิเคชันของคุณ (หรือสร้างโปรเจ็กต์ใหม่):
cd~/django_app - (ไม่บังคับ) เปลี่ยนแอปเริ่มต้น:
gitclone<your_repo_url> . - เปิดใช้งานสภาพแวดล้อมเสมือนจริง:
sourcevenv/bin/activate - ติดตั้งแพ็กเกจที่จำเป็น:
pip install -r requirements.txt - ปรับ
settings.py: ชุดALLOWED_HOSTSไปยังโดเมน/IP ของคุณ และตรวจสอบให้แน่ใจว่าSTATIC_ROOTมีอยู่จริง - ย้ายฐานข้อมูล:
python manage.py migrate - รวบรวมสัญญาณรบกวนเข้าไว้ด้วยกัน
STATIC_ROOT:python manage.py collectstatic --noinput - รีสตาร์ท Gunicorn เพื่อให้การเปลี่ยนแปลงมีผล:
sudo systemctl restart gunicorn - รีสตาร์ท Nginx:
sudo systemctl restart nginx
6. เข้าใช้งานแอปของคุณ
Your Django app is available at: http://<server-ip
Nginx ทำหน้าที่เป็น reverse proxy สำหรับการส่งคำขอไปยัง Gunicorn ผ่านทาง Unix socket
7. ต้องการเปลี่ยนพอร์ตหรือโดเมนหรือไม่?
ในการปรับแต่งโดเมน พอร์ต หรือเพิ่ม SSL:
- แก้ไขการตั้งค่าเว็บไซต์ Nginx:
sudo nano /etc/nginx/sites-available/gunicorn_django - การตั้งค่าการทดสอบ:
sudo nginx -t - รีโหลด Nginx:
sudo systemctl restart nginx
8. เปิดใช้งาน HTTPS (ไม่บังคับ)
ใช้ Certbot เพื่อเปิดใช้งาน HTTPS
ติดตั้ง certbot:
sudo apt install certbot python3-certbot-nginx -y
รับใบรับรองและอัปเดต Nginx โดยอัตโนมัติ:
sudo certbot --nginx -d example.com
ทดสอบ:
nginx -t && sudo systemctl reload nginx