此文基於官網貼子:
余總的gitee:
步驟如下
-
准備一台裝好ubuntu20.04的服務器,本地虛擬機或者VPS皆可,注意這里的系統指的是Ubuntu server,不是桌面版的,桌面版的系統安裝會狀況百出!!!虛擬機的網絡要用橋接模式。
-
設置root密碼
sudo passwd root -
添加用戶
adduser USERNAME #用戶名USERNAME換成自己計划使用的用戶名,如果直接使用已存在且有sudo權限的賬號,這一步和下面這一步就可跳過。 -
將用戶設置sudo權限:
usermod -aG sudo USERNAME #記得把命令行里的USERNAME改成自己剛設置的用戶名 -
通過ssh登錄root用戶
#虛擬機需要先設置將端口22開放才能通過ssh連接 vim /etc/ssh/sshd_config 按i,移動光標打到以下內容修改: #Port 22 改為 Port 22 #PermitRootLogin prohibit-password 改為 PermitRootLogin yes 修改好按ESC,shift+:,輸入wq回車 重啟服務 /etc/init.d/ssh restart -
替換國內鏡像源,下面用的是清華的鏡像源,操作如下(root用戶可不輸入sudo):
1.備份 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak 2.修改 sudo vim /etc/apt/sources.list 3.按ggVG進行全選,按d進行刪除 4.將下面源粘貼 5.按esc,再按shift+:,輸入wq回車(這步是保存退出)# 默認注釋了源碼鏡像以提高 apt update 速度,如有需要可自行取消注釋 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse # 預發布軟件源,不建議啟用 # deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse -
更新並重啟
apt update && apt upgrade -y && shutdown -r now -
下載node.js
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash - -
安裝操作系統級依賴
apt install -y nodejs mariadb-server-10.3 redis-server python3-pip nginx python3-testresources #最新的10.5版本的Mariadb數據庫安裝后會報錯,需要更改默認的數據庫引擎。建議10.3版本。——來自Jason Zhang的文檔,所以我這里又在Mariadb后面加上了個版本號 -
用nano編輯my.cnf文件
nano /etc/mysql/my.cnf
將光標移動到最后空白行,復制以下文本內容,ctrl + O,回車確認,ctrl + X返回命令行
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
[mysql]
default-character-set = utf8mb4
- 重啟sql
service mysql restart
- mysql的安全配置
mysql_secure_installation
第一個輸入數據庫密碼對話框出來的時候,直接敲回車代表沒有密碼,剩下的按照下面選擇:
Enter current password for root (enter for none):
#這里直接回車
Set root password? [Y/n] Y
New password:
Re-enter new password:
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] n
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
-
輸入上面新設置的數據庫root賬號密碼,進入數據庫命令行,並執行下面的語句
mysql -u root -p USE mysql; UPDATE user SET plugin=' ' WHERE user ='root'; FLUSH PRIVILEGES; exit; -
【重要】關閉ssh終端,重新以自己“新創建的用戶名”和密碼登錄
-
安裝yarn
sudo npm install -g yarn #保險起見,還需要將剛剛的yarn,node,npm添加運行權限。 sudo chmod +x /usr/bin/node. 默認有運行權限。——Jason Zhang -
查看版本,對照一下,這一步不做也行
node -v && npm -v && python3 -V && pip3 -V && yarn -v -
安裝bench,即erpnext系統的命令行管理工具,類似windows系統的程序管理器。
sudo pip3 install frappe-bench -
安裝git,下一步bench init會報錯缺少git,阿里雲可以省了這一步。
sudo apt install git -
使用bench命令安裝frappe框架,記得把frappe-bench(下方的version-13后面的名字)改成自己想要的名字,這一步時間比較長,別着急,代碼庫已經加了碼雲地址參數。如果網絡超時失敗,可重新運行該命令,重新運行之前需使用命令
rm -r myfrappe刪除之前生成的目錄。bench init --frappe-branch version-13 frappe-bench --frappe-path=https://gitee.com/phipsoft/frappe#下面這段是警告說pip有新版本,可忽略 WARNING: You are using pip version 21.0.1; however, version 21.1 is available. You should consider upgrading via the '/home/frappe/frappe-bench/env/bin/python -m pip install --upgrade pip' command. #刪掉目錄重來,還是會報,有時候報很多錯,有時候報一個無法下載某個東東,但還是報成功 SUCCESS: Bench frappe-bench initialized #如報錯,sudo rm -r frappe-bench,重新裝過,然后看運氣會有成功的時候 -
進入bench目錄,同樣記得改名
cd frappe-bench -
新建站點,名字自己取,安裝時會提示輸入數據庫root賬號的密碼, 新站點數據庫及erp系統管理員賬號administator 密碼,其中數據庫root賬號密碼須與上述數據庫安裝時密碼一致,其它密碼自己取 --db-password xxx 也可以命令行參數中直接輸入好密碼,--mariadb-root-password yyyy --admin-password zzzz
bench new-site mysite -
下載安裝erpnext
bench get-app --branch version-13 erpnext https://gitee.com/phipsoft/erpnext -
安裝erpnext
bench install-app erpnext https://gitee.com/phipsoft/erpnext -
設置為生產環境,即用supervisorctl管理所有進程,使用nginx做反向代理,USERNAME換成第3步新建的賬號,大功告成。
sudo bench setup production USERNAME -
安裝完后可查看一下是否有活動的wokers
bench doctor #正常情況下會顯示如下: -----Checking scheduler status----- Scheduler disabled for erpnext Scheduler inactive for erpnext Workers online: 3 -----erpnext Jobs----- -
以上完成后查看一下安裝了哪些app
bench version正常會顯示以下三個app
ebclocal 0.0.1 erpnext 13.1.0 frappe 13.1.2 -
如果是虛似機安裝,需要防火牆入站打開80端口。
ufw allow 80 sudo ufw status verbose #打開后顯示如下: root@erpnext:~# ufw allow 80 Rule added Rule added (v6) root@erpnext:~# sudo ufw status verbose Status: active Logging: on (low) Default: deny (incoming), allow (outgoing), deny (routed) New profiles: skip To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 22 ALLOW IN Anywhere 80 ALLOW IN Anywhere 22/tcp (v6) ALLOW IN Anywhere (v6) 22 (v6) ALLOW IN Anywhere (v6) 80 (v6) ALLOW IN Anywhere (v6) -
阿里雲服務器要在安全組里添加80的入站端口號。
附注:安裝ebclocal漢化APP
-
獲取APP
bench get-app --branch master https://gitee.com/yuzelin/ebclocal.git -
安裝APP
bench install-app ebclocal -
用瀏覽器(推薦 Chrome或Firefox)輸入IP或域名,登錄系統,用戶名administrator,密碼是第21步admin-password密碼。設
常見問題
-
wkhtmltopdf安裝時出現字體庫依賴無法安裝等錯誤 參考了這個https://askubuntu.com/questions/604029/dependency-problems-with-wkhtmltopdf-when-trying-to-install-latest-version,最后是以下命令解決了
sudo apt-get -f install -
通過打印轉PDF時出現亂碼 參考這個帖子https://www.taodudu.cc/news/show-1772808.html,用以下命令安裝字體
sudo apt-get install ttf-wqy-zenhei -y
