文章目录
安装方式一
- 首先得安装一个ubuntu22.04
- 然后手动安装一下nodejs
- 安装完成找到ERPNext中文社区|ERPNext中国 群聊,在群文件中找到
- install-erpnext14-ubuntu22.04-v0.2安装脚本,执行脚本,就是漫长的等待
- 中途可能会因为python版问题,pip源的问题,以及github地址当问不通的问题,导致执行安装失败,这时候只需要一次次重新尝试
- 安装终究会成功
- 访问ip地址加端口80 账号Administrator 密码:admin
安装方式二
- 安装ubuntu-server-22-04
- 先给root账户设置密码
使用sudo命令为root用户添加新密码
sudo passwd root
-
开放22端口【用于远程连接】
-
添加用户
-
下载node.js
-
安装程序运行所需的依赖
-
数据库配置
-
安装yarn,并切换国内源
-
更改pip镜像源
-
基础环境安装完成
-
安装bench
-
安装frappe框架
-
创建新站点
-
下载app
-
安装app
-
设置为生产环境
-
安装常用app
-
访问
安装方式三
环境:腾讯云轻量应用服务器
系统:Ubuntu 20.04 LTS
APP版本:Frappe 13.21.0 / ERPNext 13.21.0
安装步骤
-
腾讯云服务器,使用默认ubuntu用户。
-
设置root密码
sudo passwd root #密码root
-
切换用户到root
su - root
-
更新并重启
apt update && apt upgrade -y && shutdown -r now
-
重启后继续切换到root,下载node.js
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
-
安装操作系统级依赖
apt install -y nodejs mariadb-server-10.3 redis-server python3-pip nginx python3-testresources git libffi-dev python3-dev libssl-dev gcc g++ make
-
用nano编辑my.cnf文件
nano /etc/mysql/my.cnf
将光标移动到最后空白行,复制以下文本内容,粘贴后注意格式和换行要同下方,ctrl + X返回命令行,保存cy.cnf。
[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] Y
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终端,重新以ubuntu用户登录
-
安装yarn
sudo npm install -g yarn #yarn config get registry查看源, 如果不是淘宝的源就切换为淘宝的源 yarn config set registry https://registry.npm.taobao.org yarn config set sass_binary_site "https://npm.taobao.org/mirrors/node-sass/" yarn config set phantomjs_cdnurl "http://cnpmjs.org/downloads" yarn config set electron_mirror "https://npm.taobao.org/mirrors/electron/" yarn config set sqlite3_binary_host_mirror "https://foxgis.oss-cn-shanghai.aliyuncs.com/" yarn config set profiler_binary_host_mirror "https://npm.taobao.org/mirrors/node-inspector/" yarn config set chromedriver_cdnurl "https://cdn.npm.taobao.org/dist/chromedriver" npm config set phantomjs_cdnurl https://npm.taobao.org/mirrors/phantomjs/
-
查看版本,对照一下,这一步不做也行
node -v && npm -v && python3 -V && pip3 -V && yarn -v
-
安装bench,即erpnext系统的命令行管理工具,类似windows系统的程序管理器。
sudo pip3 install frappe-bench==5.6.0
-
使用bench命令安装frappe框架,记得把frappe-bench(下方的version-13后面的名字)改成自己想要的名字,这一步时间比较长,别着急,代码库已经加了码云地址参数。如果网络超时失败,可重新运行该命令,重新运行之前需使用命令
rm -r myfrappe
删除之前生成的目录。bench init --frappe-branch version-13 frappe-bench --frappe-path=https://gitee.com/qinyanwan/frappe
-
进入bench目录,同样记得改名
cd frappe-bench
-
新建站点,名字自己取,安装时会提示输入数据库root账号的密码, 新站点数据库及erp系统管理员账号administator 密码,其中数据库root账号密码须与上述数据库安装时密码一致。administrator密码请一定记住,这是初始化系统时使用的密码。
#新建一个站点,下面的命令示例站点名称为erpnext bench new-site erpnext #这里要输入mysql root的密码 #安装完后提示要设置系统用户administrator的密码
-
下载erpnext
bench get-app --branch version-13 erpnext https://gitee.com/qinyanwan/erpnext
-
安装erpnext
bench --site {sitename} install-app erpnext
-
设置为生产环境,即用supervisorctl管理所有进程,使用nginx做反向代理,USERNAME换成第3步新建的账号,大功告成。
sudo bench setup production {USERNAME} #重要:设置成生产环境后,不用执行bench start进行启动!!! #这里的{USERNAME}要换成安装时用的用户名,比如用ubuntu用户时,这里的{USERNAME}就是ubuntu
-
安装完后可查看一下是否有活动的wokers
bench doctor #正常情况下会显示如下: -----Checking scheduler status----- Scheduler disabled for erpnext Scheduler inactive for erpnext Workers online: 3 -----erpnext Jobs-----
-
以上完成后查看一下安装了哪些app
bench version
正常会显示以下两个app
erpnext 13.x.x frappe 13.x.x
安装完访问的初始画面是错乱的,要处理一下
chmod 701 /home/{frappe-user} #这里的{frappe-user}要换成安装时用的用户名,比如用ubuntu用户时,这里的{frappe-user}就是ubuntu
常用app安装
ERPNext中文汉化
-
获取app
bench get-app https://gitee.com/yuzelin/erpnext_chinese.git
-
安装
bench --site {sitename} install-app erpnext_chinese
ERPNext开箱即用
-
获取app
bench get-app https://gitee.com/yuzelin/erpnext_oob.git
-
安装
bench --site {sitename} install-app erpnext_oob
ERPNext权限优化
-
获取app
bench get-app https://gitee.com/yuzelin/zelin_permission.git
-
安装
bench --site {sitename} install-app zelin_permission
Ubuntu20.04 安装打印wkhtmltopdf 库
1、先下载适合我们系统的安装包并进行安装:
wget “https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-
1/wkhtmltox_0.12.6-1.focal_amd64.deb” -O /tmp/wkhtml.deb
2、下一步进行安装
sudo dpkg -i /tmp/wkhtml.deb
3、这时可能会显示缺少依赖的错误,以下命令可解决这一问题:
sudo apt -f install
4、现在,我们可以检查wkhtmltopdf 库是否正确安装并确认是否为所需版本:
wkhtmltopdf –version
显示ltopdf 0.12.6 (with patched qt)即是正确版本
其他注意:
apt install wkhtmltopdf
这条命令源自动安装版本0.12.5,非patched qt 版本,erpnext 不打印页面头部和底部。
如果wkhtmltopdf 库不是我们需要的版本,应对其进行卸载,命令如下:
sudo apt remove --purge wkhtmltopdf
其他常见问题
用过程中突然无法连接服务器,页面出现报错。
原因:
生境的il2ban在同一ip操作太频繁时视为受到DDOS攻击而触发自动保护。
处理方法:
开/etfail2ban/jail.d/nginx-proxy.conf
sudo nano /etc/fail2ban/jail.d/nginx-proxy.conf
将maxtry数值改大一些,比如25,bantime改小一些,改完保存退出。
重启fail2ban
sudo systemctl restart fail2ban
更多问题见余老师在码云的问题库:
https://gitee.com/yuzelin/erpnext-chinese-docs/issues?assignee_id=&author_id=&branch=&collaborator_ids=&issue_search=&label_ids=&label_text=&milestone_id=&priority=&private_issue=&program_id=&project_id=yuzelin%2Ferpnext-chinese-docs&project_type=&scope=&single_label_id=&single_label_text=&sort=&state=closed&target_project=
注意:如果安装完成,但是登录进不去。控制台显示js错误,建议是清除浏览器缓存,然后再刷新重试,提示数据库错误,查看安装目录是不是安装了好几个站点把没有用的站点删除掉,再次执行重新,剩下一般都是些linux常用设置,没事时候多看看,要学习的东西还很多