วิธีเตรียมเครื่องมือเพื่อติดตั้ง Frappe Framework บน ubuntu หรือผ่าน WSL ของ windows ก็ได้
ความต้องการของระบบ
การติดตั้งและพัฒนา Frappe Framework แนะนำให้ใช้ Linux หรือ macOS หากใช้งาน Windows ให้ใช้งาน Ubuntu ใน WSL แทน (ในบทความนี้จะใช้งาน Ubuntu ใน WSL)
ข้อกำหนดเบื้องต้น
เครื่องมือต่างๆที่จำเป็นต่อการติดตั้งเพื่อให้สามารถใช้งาน Frappe Framework
MariaDB 10.6.6+ (11.3 is recommended on develop)
Python 3.10/11/12
Node 18 or 20
Redis 6 (caching and realtime updates)
yarn 1.12+ (js dependency manager)
pip 20+ (py dependency manager)
wkhtmltopdf (version 0.12.5 with patched qt) (for pdf generation)
cron (bench's scheduled jobs: automated certificate renewal, scheduled backups)
เริ่มขั้นตอนการติดตั้ง
** ใช้ User ที่ไม่ใช่ root บน ubuntu ในการติดตั้ง **
1.อัพเดทรายชื่อ package ของ ubuntu ให้เป็นล่าสุด
sudo apt update
2.ติดตั้ง git, python และ redis
sudo apt install git python-is-python3 python3-dev python3-pip redis-server
3.ติดตั้งระบบฐานข้อมูล MariaDB และ MariaDB Client
sudo apt install mariadb-server mariadb-client
เมื่อติดตั้ง mariadb-server แล้วในขั้นตอนการติดตั้งไม่ได้มีให้กำหนดรหัสผ่านสำหรับ root ให้ดำเนินการ ดังนี้
เริ่มต้นเปลี่ยน User ให้เป็น root ก่อน
sudo su
จากนั้นพิมพ์คำสั่ง
mariadb-secure-installation
ขั้นตอนหลังจากพิมพ์คำสั่ง
Enter current password for root (enter for none): # กด Enter
Switch to unix_socket authentication [Y/n] Y # พิมพ์ Y แล้ว Enter
Change the root password? [Y/n] Y # พิมพ์ Y แล้ว Enter
New password: # ตั้งรหัสผ่าน
Re-enter new password: # ยืนยันรหัสผ่าน
Remove anonymous users? [Y/n] Y # พิมพ์ Y แล้ว Enter
Disallow root login remotely? [Y/n] Y # พิมพ์ Y แล้ว Enter
Remove test database and access to it? [Y/n] Y # พิมพ์ Y แล้ว Enter
Reload privilege tables now? [Y/n] Y # พิมพ์ Y แล้ว Enter
Thanks for using MariaDB!
เมื่อตั้งค่าเสร็จแล้วให้กลับไปที่ User ปัจจุันโดยพิมพ์คำสั่ง
exit
4.ติดตั้ง NodeJS
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
เมื่อติดตั้งเสร็จแล้วให้ปิดหน้าจอ Terminal หรือ SSH เพื่อที่จะใช้งาน nvm
ได้
nvm install 20
npm install -g yarn
5.ติดตั้ง wkhtmltopdf
sudo apt install xvfb libfontconfig
6.ติดตั้ง Bench CLI
pip install frappe-bench
ถ้าพบ error: externally-managed-environment
× This environment is externally managed
╰─> To install Python packages system-wide, try apt install python3-xyz, where xyz is the package you are trying to install.
ให้ดำเนินการดังนี้
ตรวจสอบเวอร์ชันของ python ที่มีในเครื่องโดยใช้คำสั่ง python --version
จากนั้นจะแสดงเวอร์ชันของ python เช่น Python 3.12.3
แต่ใช้เลขเวอร์ชันเป็น 3.12
- ติดตั้ง python-venv โดยใช้เวอร์ชันที่เครื่องมี:
sudo apt install python3.12-venv
- สร้าง venv:
python -m venv frappe-venv
- เปิดใช้งาน venv ที่สร้างขึ้น:
source frappe-venv/bin/activate
- เมื่อเปิดใช้งานได้จะแสดงชื่อ venv ที่สร้างขึ้น เช่น
(frappe-venv) user@hostname:~$
- ติดตั้ง frappe-bench อีกครั้ง
เมื่อติดตั้ง frappe-bench เสร็จ ให้ตรวจสอบว่าติดตั้งเสร็จสมบูรณ์หรือไม่ โดยพิมพ์คำสั่ง
bench --version
หากแสดง version ออกมา เช่น 5.23.0
แสดงว่าติดตั้ง bench
เรียบร้อยแล้ว
7.สร้างโปรเจ็ค Frappe
bench init <directory name>
ตัวอย่าง สร้างไว้ที่ /home/[user]
cd ~
bench init frappe-demo
เมื่อสำเร็จจะแสดงข้อความ
SUCCESS: Bench frappe-demo initialized
แต่ถ้าพบ error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> [30 lines of output]
/bin/sh: 1: pkg-config: not found
…
Exception: Can not find valid pkg-config name.
Specify MYSQLCLIENT_CFLAGS and MYSQLCLIENT_LDFLAGS env vars manually
[end of output]
ให้ติดตั้ง pkg-config และ libmysqlclient-dev โดยพิมพ์คำสั่ง
sudo apt install pkg-config libmysqlclient-dev
ต่อไปจะต้องทำการสร้าง site แล้วรันเพื่อให้ใช้งาน Frappe Framework ได้ ดูขั้นตอนถัดไปได้จากบทความนี้