開發與維運

在阿里云上部署ERPNext

快速体验

如果想快速体验ERPNext的界面及功能,有如下的方式,如果想自行安装,请继续往下看 @__手动安装__ 的部分:

1.官网注册Demo账号
2.官网下载虚拟机镜像
3.官网提供的快速安装脚本

手动安装

安装环境

  • 硬件配置: 推荐2CPU,4G内存以上(比较吃资源)
  • 操作系统: 本文采用Ubuntu 18.04 x64 作为服务器操作系统

系统依赖

安装git

sudo apt-get update
sudo apt-get install git
检查一下
git --version


安装python开发包

ERPNext基于Frappe开发,而Frappe对于Python最低版本的要求为2.7(系统默认会带), 而往上3.5以上的版本也支持:
Python 2.7.x:
sudo apt-get install python-dev
Python 3.x:
sudo apt-get install python3-dev
安装 setuptools 和 pip:
Python 2.7.x:
sudo apt-get install python-setuptools python-pip
Python 3.x:
sudo apt-get install python3-setuptools python3-pip
可以通过别名alias来让Python指向3.x:
alias python=python3
alias pip=pip3











安装MariaDB

安装Maria DB 10.3 stable版:

sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://ftp.ubuntu-tw.org/mirror/mariadb/repo/10.3/ubuntu xenial main'
sudo apt-get update
sudo apt-get install mariadb-server-10.3



安装客户端库 libmysqlclient-dev:
sudo apt-get install libmysqlclient-dev

编辑配置文件my.cnf:
sudo nano /etc/mysql/my.cnf
在配置文件对应区块加入如下内容:

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

[mysql]
default-character-set = utf8mb4

重启mysql服务让配置文件修改生效:
sudo service mysql restart

安装Redis Server

sudo apt-get install redis-server

这里可能会有坑,进度条可能会卡住,这个时候可以尝试重启大法,重新进系统之后再运行该命令

安装Nodejs 10.x

sudo apt-get install curl
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt-get install -y nodejs

安装yarn

sudo npm install -g yarn

应用依赖

安装bench

bench是Frappe这个框架里面,站点(Sites)和应用(Apps)的容器和管理器,通过bench的命令行可以方便的管理基于Frappe的站点和应用

官方不推荐用root权限来执行bench命令,因此可以考虑专门创建一个系统账户

adduser {frappe-name-you-like}
usermod -aG sudo {frappe-name-you-like}

切换用户或者注销重新远程登录
sudo su {frappe-name-you-like}

安装bench
git clone https://github.com/frappe/bench
pip install -e ./bench

惯例测试一下
bench --version

初始化frappe

通过bench初始化frappe:
bench init --frappe-branch version-12 --python /usr/bin/python3 frappe-bench

切换到frappe环境目录
cd ~/frappe-bench

安装ERPNext

前面都是铺路,折腾了这么久,这里才正式开始安装ERPNext...

通过bench新建站点:
bench new-site site1.local
通过bench获取ERPNext应用:
bench get-app --branch version-12 erpnext
安装ERPNext应用:
./env/bin/pip3 install -e apps/erpnext/
将应用安装到前面新建的站点:
bench --site site1.local install-app erpnext






运行

如果一切顺利,这里就可以开始跑起来了:
bench start

这里也可能有坑,尝试运行一下 bench setup redis

采用Nginx作为Web容器

可以采用nginx来作为web容器:
安装nginx
sudo apt-get install nginx
生成nginx配置
bench setup nginx
移除原有配置
rm -f /etc/nginx/sites-enabled/*
创建软连接
sudo ln -s ./config/nginx.conf /etc/nginx/sites-enabled/frappe.conf
重启 nginx
sudo service nginx restart









(待完善)

Leave a Reply

Your email address will not be published. Required fields are marked *