可视化安装ERPNext

原创作品,转载请注明出处。

作者:王永建,联系方式:blog@,博客地址:

ERPNext是一个功能齐全的企业业务管理解决方案,可帮助企业在一个系统中记录日常的业务交易。ERPNext是全开源的企业ERP解决方案,不像ODOO和国内的一些开源系统分社区版和企业版,社区版用着各种限制,想好用就得交钱升级,ERPNext代码、数据可以全部自己掌控,技术实力好的可以自行修改代码或定制插件实现个性功能,不过大多数下ERPNext是可以直接配置实现常见业务的,个别业务其实也是可以调整自身的业务来通过适应ERPNext来实现的。由于在安装过程中遇到过一些问题,为此还专门写过一遍不成熟的如何安装的文章,在国内的网络环境中手动安装ERPNext多多少少都需要经历些折磨,网络超时、换源、版本不匹配等问题时常是会遇到的。

我也在尝试探索新的安装方式,降低安装难度已经降低对网络的要求,毕竟官方使用的Github在国内访问不是不很友好,改用国内源也错等问题,解决此类错误往往比较耗时,就软件而言我们仅仅是使用者,时间最好花在业务上。

本次可视化安装方案采用了1Panel作为交互工具,采用Docker实现可视化方案,告别指令操作。

1Panel是新一代的Linux服务器运维管理面板,更详细的介绍及Demo演示,请到。

docker是一个用Go语言实现的开源项目,其将应用程序以及应用程序所有的依赖都打包到一个容器中,也就是说应用程序包含了自身运行环境,可以在任何环境都会有一致的表现,也不受外接软件环境的影响。就好比买了一个电水壶,打开包装就能用,不像买了一个组合床开箱后还得组装。有关docker的更多使用信息请到

1.准备主机平台

在开始安装以前,最好准备一台全新安装的主机,可以是物理机也可以是虚拟机,当然也可以买一个云主机,常见的基于Linux的系统都可以被支持,我是在腾讯云上安装了系统。我的配置很垃圾的,2C4G,2个CPU核心,4G内存,5Mbps的外网带宽。

主机准备好后先把系统更新到最新

sudoaptupdatesudoaptupgrade
2.安装1Panel

通过SSH工具登录到准备好的主机平台,我用的WindTerm,很顺手的一个终端工具。

Ubuntu系统执行下面的指令后自动安装,更多安装方式请参考官方在线安装-1Panel文档

curl-sSL;sudobashquick_

根据提示设置目录和端口,其他的都是自动完成。完成后参考日志登录1Panel系统。


在浏览器中输入面板地址即可访问,输入安装日志中的用户名和密码即可登录


3.安装OpenResty


4、部署ERPNext4.1新建编排

通过下图新创建一个编排文件。在1Panel里是编码,而在Portainer成为Stack(栈),应该是一样的,对docker研究不深,仅会几个指令而已。



配置信息如下,根据需要自行修改。可参考。

version:"3"services:back:image:frappe/erpnext::restart_policy:condition:on-failurevolumes:-sites:/home/frappe/frappe-bench/sites-logs:/home/frappe/frappe-bench/logsconfigurator:image:frappe/erpnext::restart_policy:condition:noneentrypoint:-:MYSQL_ROOT_PASSWORD:adminvolumes:-db-data:/var/lib/mysqlfront:image:frappe/erpnext::restart_policy:condition:on-failurecommand:-:BACKEND:back:8000FRAPPE_SITE_NAME_HEADER:frontSOCKETIO:websocket:9000UPSTREAM_REAL_IP_ADDRESS:127.0.0.1UPSTREAM_REAL_IP_HEADER:X-Forwarded-ForUPSTREAM_REAL_IP_RECURSIVE:"off"PROXY_READ_TIMEOUT:120CLIENT_MAX_BODY_SIZE:50mvolumes:-sites:/home/frappe/frappe-bench/sites-logs:/home/frappe/frappe-bench/logsports:-"8080:8080"queue-long:image:frappe/erpnext::restart_policy:condition:on-failurecommand:-bench-worker---queue-long,default,shortvolumes:-sites:/home/frappe/frappe-bench/sites-logs:/home/frappe/frappe-bench/logsqueue-short:image:frappe/erpnext::restart_policy:condition:on-failurecommand:-bench-worker---queue-short,defaultvolumes:-sites:/home/frappe/frappe-bench/sites-logs:/home/frappe/frappe-bench/logsredis-queue:image:redis:6.2-alpinedeploy:restart_policy:condition:on-failurevolumes:-redis-queue-data:/dataredis-cache:image:redis:6.2-alpinedeploy:restart_policy:condition:on-failurevolumes:-redis-cache-data:/datascheduler:image:frappe/erpnext::restart_policy:condition:on-failurecommand:-bench-schedulevolumes:-sites:/home/frappe/frappe-bench/sites-logs:/home/frappe/frappe-bench/logswebsocket:image:frappe/erpnext::restart_policy:condition:on-failurecommand:-node-/home/frappe/frappe-bench/apps/frappe/:-sites:/home/frappe/frappe-bench/sites-logs:/home/frappe/frappe-bench/logsvolumes:db-data:redis-queue-data:redis-cache-data:sites:logs:

部署成功后可以在容器中看到若干ERPNext已经运行的容器了。ERPNext已经部署完成了,下面就是登陆了。


4.2发布ERPNext

部署完成后我使用了OpenResty代理发布ERPNext,根据下图设置反向代理,域名替换为自己可用的域名,并做好解析。


启用HTTPS并设置证书,我申请的腾讯云免费的SSL证书。


5.访问ERPNext

完成上述设置后,就可以通过域名来访问新安装的ERPNext了。用户名:Administrator,密码:admin。好了,可用登录系统了。


后面就是如何初始化系统了,网上资料一大把,这里不做重复阐述了。

欢迎把本文转发给你的朋友,也许他们正需要。

免责声明:本文章如果文章侵权,请联系我们处理,本站仅提供信息存储空间服务如因作品内容、版权和其他问题请于本站联系