ERPNext 手动安装

2021-09-30 1960点热度 5人点赞 0条评论

最近在梳理公司团队的各项业务流程,需要一个工具来支持各项业务的执行及反馈。创业阶段没有什么预算资金,主要的打算是在开源系统中寻找,看了几个国内的系统,不是有各种限制就是完整度欠佳,随界面漂亮但无法安心用起来。深入测试了曝光度最高的Odoo,搭建了测试环境,联合各部门测试的时候发现无法应用,主要表现在操作不习惯,系统响应速度偏慢,个性化的需求不能满足。还有打着开源旗号的Odoo并不是全部开源,社区版开源但是无法满足实际需求,功能更全面的企业版又是收费的。好处就是文档齐全,国内集成商也多,在资金充足的情况下可以考虑。在查找资料时无意发现了ERPNext,完全开源,尤其是其强大到有些变态的权限系统,是一直在寻找在其他系统上一直布置如何实现的。

受制于国内网络限制,官方提供的一键安装方式在国内无法实现,只能采用手动安装的方式。载体选择了ubuntu20.4,在安装过程中经历一些波折,期间也发现了一些值得借鉴的参考文章,见结尾部分。

安装操作系统

我在虚拟机安装了最新版的ubuntu20.4 服务器版系统,我这里用的预设用户名为erpnext,密码erpnext

更换国内镜像源

受制于的国内网络现状,系统安装完成后将操作系统的软件源仓库替换为国内的镜像源,阿里、网易、华为什么的都可以,我用的清华的源,方法:

1、修改前要有好习惯,先做备份

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak 

2、修改仓库设置

sudo nano /etc/apt/sources.list

这里用了nano,用vi、vim或其他的也可以

3、替换为清华的源

deb 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 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

4、更新、重启

sudo apt update 

sudo apt upgrade 

sudo reboot

安装node.js

curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -

根据提示输入密码

安装依赖软件包

sudo apt install -y nodejs mariadb-server redis-server python3-pip nginx python3-testresources

配置数据库

1、打开数据库配置

sudo nano /etc/mysql/my.cnf

同上这里用了nano,用vi、vim或其他的也可以

2、添加如下配置信息

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

3、重启数据库用于加载新的配置

sudo service mysql restart

4、初始化数据库

执行下面的指令开始配置数据库,这是mysql的安全配置,数据库安装后默认没有密码,直接敲回车代表即可,

sudo mysql_secure_installation

按照提示完成设置

Set 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
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

配置数据表

输入下面的指令

sudo mysql -u root -p

输入上一步设置的密码,依次执行以下指令

USE mysql; 
UPDATE user SET plugin=' ' WHERE user ='root'; 
FLUSH PRIVILEGES;
exit;

配置pip为国内镜像源

1、配置当前用户配置文件

mkdir ~/.pip

nano ~/.pip/pip.conf

进入编辑模式,我设置了中国科技大学的镜像源

[global]
index-url = https://pypi.mirrors.ustc.edu.cn/simple

[install]
trusted-host= pypi.mirrors.ustc.edu.cn

2、配置root用户的配置文件

sudo mkdir /root/.pip

sudo cp ~/.pip/pip.conf /root/.pip

安装yarn

sudo npm install -g yarn

配置Yarn的源,我用了淘宝的源

yarn config set registry https://registry.npm.taobao.org

检验环境安装情况

通过查看版本来查看安装是否正确,也可不做

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

安装bench,即erpnext系统的命令行管理工具

sudo pip3 install frappe-bench

安装git

sudo apt install git
sudo pip3 install GitPython

NPM Python设置

#安装python2,npm需要
sudo apt install python2.7
#设置环境变量
sudo npm config set python /usr/bin/python2.7

安装frappe框架

bench init --frappe-branch version-13 --frappe-path=https://gitee.com/qinyanwan/frappe

版本后的frappe-bench可以改为任意名字,这里用了码云的镜像,github连接不稳

进入bench目录

cd frappe-bench(上一步指定的名字)

创建新站点

bench new-site newsite(站点名称)

下载ERPNext

bench get-app --branch version-13 https://gitee.com/qinyanwan/erpnext

安装ERPNext

bench install-app erpnext

设置为生产环境

sudo bench setup production 站点名(我上安装系统是设置的用户名,根据需要改成自己的)

启动应用

bench start

启动后即可通过http://IP:8000访问应用

supervisor报错

收到/var/run/supervisor.sock no such file错误提示

# 配置服务

systemctl enable supervisor.service # 在此之前需要配置好服务
systemctl start supervisor.service

参考文章

wangyongjian

这个人很懒,什么都没留下

文章评论