Ubuntu 22.04 Server 安装 ERPNext 15 教程
本文发布于855 天前,其中的信息可能已经过时,如有错误请发送邮件到919293678#qq.com

1.如果当前登录的是root用户,请新建一个用于安装ERP的sudo用户。

adduser [frappe-user]
usermod -aG sudo [frappe-user]

2. 更新系统并重启系统。

apt update && apt upgrade -y && shutdown -r now

3.安装 curl

sudo apt install curl

4.安装 nvm

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash

4.1如果你无法访问GitHub,请把raw.githubusercontent.com的ip地址加入到host文件最后一行。(报443错误的大部分情况都可以通过这个方法解决)

sudo nano /etc/hosts

例如:

185.199.111.133 raw.githubusercontent.com

4.3在nvm安装完成后,你需要在命令行中输入以下命令来使nvm生效:

source ~/.bashrc

5.把nvm源临时改为国内,提高node18的安装速度

NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node

6.安装 Node18

 nvm install 18

6.1把npm源改为国内

npm config set registry=http://registry.npm.taobao.org/

查看npm当前源地址

npm config get registry

6.2安装Canvas

npm install canvas

7.安装HTML to PDF

下载wkhtmltox_0.12.6.1-2.jammy_amd64.deb

wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-2/wkhtmltox_0.12.6.1-2.jammy_amd64.deb

安装wkhtmltox_0.12.6.1-2.jammy_amd64.deb

 

sudo dpkg -i wkhtmltox_0.12.6.1-2.jammy_amd64.deb

7.1检查wkhtmltopdf 库是否正确安装并确认是否为所需版本

wkhtmltopdf –version

显示wkhtmltopdf 0.12.6.1 (with patched qt) 即是正确版本

7.2如果出现如下错误:

~$ sudo dpkg -i wkhtmltox_0.12.6.1-2.jammy_amd64.deb
Selecting previously unselected package wkhtmltox.
(Reading database ... 74415 files and directories currently installed.)
Preparing to unpack wkhtmltox_0.12.6.1-2.jammy_amd64.deb ...
Unpacking wkhtmltox (1:0.12.6.1-2.jammy) ...
dpkg: dependency problems prevent configuration of wkhtmltox:
wkhtmltox depends on fontconfig; however:
Package fontconfig is not installed.
wkhtmltox depends on libjpeg-turbo8; however:
Package libjpeg-turbo8 is not installed.
wkhtmltox depends on libxrender1; however:
Package libxrender1 is not installed.
wkhtmltox depends on xfonts-75dpi; however:
Package xfonts-75dpi is not installed.
wkhtmltox depends on xfonts-base; however:
Package xfonts-base is not installed.

dpkg: error processing package wkhtmltox (--install):
dependency problems - leaving unconfigured
Processing triggers for man-db (2.10.2-1) ...
Errors were encountered while processing:
wkhtmltox

运行以下命令安装依赖,再次安装wkhtmltox_0.12.6.1-2.jammy_amd64.deb即可

sudo apt install -f

8.安装操作系统所需的各种依赖包

sudo apt install -y python3.10-dev python3-setuptools python3-pip python3-distutils python3.10-venv software-properties-common mariadb-server mariadb-client redis-server nodejs xvfb libfontconfig libmysqlclient-dev nginx git ansible ttf-wqy-zenhei ttf-wqy-microhei

9.将Python的pip源改成国内源,有助于后面安装frappe时提高速度和成功率。

pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
pip config set install.trusted-host mirrors.aliyun.com

10. 接下来开始配置MariaDB,用nano编辑my.cnf文件。

sudo nano /etc/mysql/my.cnf

10.1将光标移动到最后空白行,复制以下文本内容,粘贴后注意格式和换行要同下方,Ctrl + S保存,Ctrl + X返回命令行。

[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

[mysql]
default-character-set = utf8mb4

10.2重启sql

sudo service mysql restart

10.3开始mysql的安全配置

sudo mysql_secure_installation

第一个输入数据库密码对话框出来的时候,直接敲回车代表没有密码,剩下的按照下面选择:

# 注:运行结果用 ··· 代替
Enter current password for root (enter for none): # 输入root(mysql)的密码,初次安装默认没有,直接回车
...
Switch to unix_socket authentication [Y/n] n # 是否切换到unix套接字身份验证[Y/n]
...
Change the root password? [Y/n] y #是否设置root用户密码
New password: # 新密码
Re-enter new password: # 再次输入密码
...
Remove anonymous users? [Y/n] y # 是否删除匿名用户,建议删除
...
Disallow root login remotely? [Y/n] n # 是否禁止root远程登录,建议不开启
...
Remove test database and access to it? [Y/n] n # 是否删除test数据库,可以保留
...
Reload privilege tables now? [Y/n] y # 是否重新加载权限表,也可以直接回车
...
Thanks for using MariaDB! # 看到这句话证明设置成功

11.安装 Yarn

npm install -g yarn

查看yarn源

 yarn config get registry

如果官方源请设置为以下国内源

yarn config set registry https://registry.npmmirror.com/ --global && \
yarn config set disturl https://npmmirror.com/package/dist --global && \
yarn config set sass_binary_site https://cdn.npmmirror.com/binaries/node-sass --global && \
yarn config set electron_mirror https://registry.npmmirror.com/binary.html?path=electron/ --global && \
yarn config set puppeteer_download_host https://registry.npmmirror.com/binary.html --global && \
yarn config set chromedriver_cdnurl https://cdn.npmmirror.com/binaries/chromedriver --global && \
yarn config set operadriver_cdnurl https://cdn.npmmirror.com/binaries/operadriver --global && \
yarn config set phantomjs_cdnurl https://cdn.npmmirror.com/binaries/phantomjs --global && \
yarn config set selenium_cdnurl https://cdn.npmmirror.com/binaries/selenium --global && \
yarn config set node_inspector_cdnurl https://cdn.npmmirror.com/binaries/node-inspector --global

npm set registry https://registry.npmmirror.com/
npm set sass_binary_site https://cdn.npmmirror.com/binaries/node-sass
npm set electron_mirror https://registry.npmmirror.com/binary.html?path=electron/
npm set puppeteer_download_host https://registry.npmmirror.com/binary.html
npm set chromedriver_cdnurl https://cdn.npmmirror.com/binaries/chromedriver
npm set operadriver_cdnurl https://cdn.npmmirror.com/binaries/operadriver
npm set phantomjs_cdnurl https://cdn.npmmirror.com/binaries/phantomjs
npm set selenium_cdnurl https://cdn.npmmirror.com/binaries/selenium
npm set node_inspector_cdnurl https://cdn.npmmirror.com/binaries/node-inspector

11.1查看版本,对照一下,这一步不做也行.

node -v && npm -v && python3 -V && pip3 -V && yarn -v

12.安装bench,即erpnext系统的命令行管理工具,类似windows系统的程序管理器。

sudo -H pip3 install frappe-bench

13. 使用bench命令安装frappe框架。frappe-bench是安装frappe框架的目录名称。

bench init --frappe-branch version-15 frappe-bench --frappe-path=https://gitee.com/mirrors/frappe --verbose

如果安装失败,可重新运行该命令,重新运行之前需使用命令 rm -r frappe-bench 删除之前生成的目录。

14. 将安装的系统用户分配一下执行权限。

chmod -R o+rx /home/[frappe-user]/

15. 进入bench目录

cd frappe-bench

16. 新建站点,把下方的{sitename}替换为你的站点名称。

bench new-site {sitename}

不需要的站点用bench drop-site {sitename} –force命令删除

17. 下载APP

bench get-app payments
bench get-app erpnext
bench get-app hrms

17.1如果你的网络无法访问GitHub.com请使用以下命令从国内仓库下载APP

bench get-app --branch version-15 https://gitee.com/qinyanwan/payments
bench get-app --branch version-15 erpnext https://gitee.com/mirrors/erpnext
bench get-app --branch version-15-beta https://gitee.com/qinyanwan/hrms

17.2安装APP

bench --site {sitename} install-app payments
bench --site {sitename} install-app erpnext
bench --site {sitename} install-app hrms

安装hrms时要在当前命令行窗口运行bench start,然后新建一个窗口安装hrms,安装完成后Ctrl+C停止工作台

18. 设置为生产环境,即用supervisorctl管理所有进程,使用nginx做反向代理。如果安装只是为了做开发,可以跳过这一步。

sudo bench setup production {USERNAME}
sudo nano /etc/supervisor/supervisord.conf
[unix_http_server]
file=var/tmp/supervisord.sock
chmod=0700
chown={USERNAME}:{USERNAME} #在这个位置加上这一行,USERNAME 如frappe:frappe

改完后执行

sudo -A systemctl restart supervisor

设置成生产环境后,不用执行bench start进行启动!!

 

19.下载/安装你需要的其他APP(确认你的网络可以访问GitHub.com)

下载/安装 LOAN / LENDING

bench get-app lending
bench --site {sitename} install-app lending

下载/安装 Education

bench get-app education
bench --site {sitename} install-app education

下载/安装 CHAT

bench get-app chat
bench --site {sitename} install-app chat

下载/安装 界面汉化

bench get-app https://gitee.com/yuzelin/erpnext_chinese.git
bench --site {sitename} install-app erpnext_chinese

下载/安装 Print Designer

bench get-app https://github.com/frappe/print_designer
bench --site {sitename} install-app print_designer

卸载你不需要的APP

bench --site {sitename} uninstall-app {APPname}

卸载APP重建文件

bench migrate

20. 查看所需的app是否安装正确,可以用这个命令

bench version

21. 查看一下是否有活动的wokers,如果没有开启生产环境,这一步可以略过。

bench doctor

正常情况下会显示如下:

—–Checking scheduler status—–
Scheduler disabled for erpnext
Scheduler inactive for erpnext
Workers online: 3
—–erpnext Jobs—–

如果不成功,可以运行sudo bench setup production {USERNAME}再设置一遍生产环境。

22.如需卸载软件,输入dpkg –list列出所有已安装的软件

卸载并清除配置文件

sudo apt-get --purge remove [APPname]

23.教程结束End

 

如果此文章有帮助到你,请向山区的学龄孩童捐赠一份午餐。韩红爱心基金会www.hhax.org
暂无评论

发送评论 编辑评论


				
上一篇
下一篇