参考了安装文档/ERPNEXT v15安装指南.md · 笑熬浆糊/ERPNext相关文档 - Gitee.com
感谢大侠笑熬浆糊和《ERPNEXT 落地实施交流》群(群号756185211),帮助少走了很多弯路。
本人是在群辉上使用VM全新安装的Ubuntu server 22.04 LTS系统
1. 如果当前登录的是root用户,就请新建一个用于安装ERP的sudo用户。由于本人安装系统是创建了非root用户,所以这一步跳过。
adduser [frappe-user]
usermod -aG sudo [frappe-user]
2. 更新系统并重启系统,使用root用户。
apt update && apt upgrade -y && shutdown -r now
3. 使用步骤1所建好的sudo用户,下载node.js
curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash -
4. 安装操作系统级依赖
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 pkg-config libcairo2-dev libjpeg-dev libgif-dev librsvg2-dev
5. 接下来开始配置MariaDB,用nano编辑my.cnf文件。
sudo nano /etc/mysql/my.cnf
将光标移动到最后空白行,复制以下文本内容,粘贴后注意格式和换行要同下方,ctrl + O,回车确认,ctrl + X返回命令行,保存my.cnf。
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
[mysql]
default-character-set = utf8mb4
6. 重启sql
sudo service mysql restart
7. mysql的安全配置
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! # 看到这句话证明设置成功
8. 安装yarn
sudo npm install -g yarn
本人尝试了多次,即使设置了国内的源,使用#yarn config get registry,查看也确实是国内的,但是后续下载还是从国外的默认源下载,所以,最后没有修改registry。
9. 查看版本,对照一下,这一步不做也行
node -v && npm -v && python3 -V && pip3 -V && yarn -v
10. 将Python的pip源改成国内源,有助于后面安装frappe时提高速度和成功率
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
pip config set install.trusted-host mirrors.aliyun.com
11. 安装bench,即erpnext系统的命令行管理工具,类似windows系统的程序管理器
sudo -H pip3 install frappe-bench
12. 使用bench命令安装frappe框架,frappe-bench是安装frappe框架的目录名称
bench init --frappe-branch version-15 frappe-bench --frappe-path=https://gitee.com/mirrors/frappe --verbose
12. 再将安装的系统用户分配一下执行权限
chmod -R o+rx /home/[frappe-user]/
13. 进入bench目录
cd frappe-bench
14. 新建站点,名字自己取,取代这里和后续命令行中的{sitename}
bench new-site {sitename}
安装时会提示输入数据库root账号的密码,新站点系统管理员账号administator(后续网页登录frappe时会用到) 密码,其中数据库root账号密码须与上述数据库安装时密码一致
15. 设置为生产环境,即用supervisorctl管理所有进程,使用nginx做反向代理。如果安装只是为了做开发,可以跳过这一步。
sudo bench setup production {frappe-user}
16. 下载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 https://gitee.com/qinyanwan/print_designer
17. 通过修改redis的配置文件/etc/redis/redis.conf,修改redis-server的端口为11000
建议先备份配置文件
sudo cp /etc/redis/redis.conf /etc/redis/redis.conf.bak
用vi 或 nano 编辑redis.conf文件
sudo vi /etc/redis/redis.conf
找到 port 6379,如下图所示,改为11000
保存退出,再重启redis服务
sudo service redis restart
如果使用默认的6379,安装erpnext的时会出错,如下图所示
18. 安装app
bench --site {sitename} install-app payments
bench --site {sitename} install-app erpnext
bench --site {sitename} install-app print_designer
19. 再设置为生产环境
sudo bench setup production {frappe-user}
如果不运行设置为生产环境,大概率erpnext还没运行起来,网页访问失败,使用bench doctor 显示 workers online:0 ,运行完成,这时网页就可以访问了,同样的,如果没开启生产环境,这一步也可以略过。
#重要:设置成生产环境后,不用执行bench start进行启动!
20. 以上完成后查看一下安装了哪些app
bench version
附注:
F1. 安装zerotier并加入
curl -s https://install.zerotier.com | sudo bash
sudo zerotier-cli join 你的network ID
F2. 解决可能存在PDF打印中文显示乱码所需要的工具
wget https://gitee.com/qinyanwan/erpnext/releases/download/v13.29.0/wkhtmltox_0.12.6.1-2.jammy_amd64.deb
sudo dpkg -i wkhtmltox_0.12.6.1-2.jammy_amd64.deb
如果安装提示有缺少依赖的错误,执行下面命令。
sudo apt -f install
现在,我们可以检查wkhtmltopdf 库是否正确安装并确认是否为所需版本:
wkhtmltopdf –version
显示wkhtmltopdf 0.12.6 (with patched qt)即是正确版本
F3. 如导出PDF乱码,需要另外安装字体
sudo apt-get install ttf-wqy-zenhei -y
sudo apt-get install ttf-wqy-microhei -y
F4. 汉化、本地化
请登录 则霖信息技术(深圳)有限公司 - 则霖信息技术(深圳)有限公司 按需安装相关APP。