2024年5月2日

HYEOS

随事而为

Docker install frappe/erpnext

1 min read

前言:

之前搭建ODOO/OPEN ERP社区版另外需要的功能收费,找企业版的源码又特么贵,然后在网上找了一下,看到有这么一款ERP软件,目前的功能与ODOO相比自然是少的,基础核心的功能却是足够了,完全开源免费。

部署环境:

VPS/Debian10 + Docker

第一步:拉取仓库

git clone https://github.com/frappe/frappe-docker
cd  frappe-docker

安装官方的版本,使用docker-compose启动要进行一些特定的修改一定要拉取仓库,对一些环境变量进行设置。

第二步:设置环境变量

cp env-production .env

特别要注意的是这里有三个可选项:env-example env-local env-production,用于正式环境推荐使用production,也即是产品发布。

vim .env

对.env里的环境变量设置成自己实际需要的,参照官方文档

LETSENCRYPT_EMAIL=email@example.com
ERPNEXT_VERSION=v13 //default edge
FRAPPE_VERSION=v13  //default edge
MARIADB_HOST=mariadb
MYSQL_ROOT_PASSWORD=admin 
SITE_NAME=erp.hyeos.net //set your XX.domain_name
SITES=`erp.hyeos.net //set your XX.domain_name
DB_ROOT_USER=erp
ADMIN_PASSWORD=admin
INSTALL_APPS=erpnext
ENTRYPOINT_LABEL=traefik.http.routers.erpnext-nginx.entrypoints=websecure
CERT_RESOLVER_LABEL=traefik.http.routers.erpnext-nginx.tls.certresolver=myresolver
HTTPS_REDIRECT_RULE_LABEL=traefik.http.routers.http-catchall.rule=hostregexp(`{host:.+}`)
HTTPS_REDIRECT_ENTRYPOINT_LABEL=traefik.http.routers.http-catchall.entrypoints=web
HTTPS_REDIRECT_MIDDLEWARE_LABEL=traefik.http.routers.http-catchall.middlewares=redirect-to-https
HTTPS_USE_REDIRECT_MIDDLEWARE_LABEL=traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
SKIP_NGINX_TEMPLATE_GENERATION=0
WORKER_CLASS=gthread本

设置完环境变量后,还可编辑docker-compose.yml文件进行端口映射的更改,这里不表述,默认80/443端口,一切完毕后开始执行容器的启动

docker-compose pull //更新镜像,如果是首次之前没有下载过镜像,时间会长一点,如果是本地环境或国内VPS可能会很长,差不多半小时左右,此步不能省略,否则启动后的容器与自己实际修改的数据不匹配无法正常使用

docker-compose --project-name erp up -d //启动容器,加参数--project-name设置erp组运行,在后期的维护管理时很方便现

现在可以使用浏览器进行域名访问,如果在docker-compose.yml里设置了端口映射,需使用开放的端口号访问。

重点:安装app

在安装本地化ertnext_chinese时,按照官方的文档和一些网络文档将app打包在镜像内的方法在容器启动运行的时候始终提示无法找到app,而在控制台使用bench get-app时提示没有此命令,bench的版本又不对,在多次测试进入控制台安装后终于完成。

docker exec -it -u root  bash //使用root用户进入控制台

passwd root //更改root密码,默认没有密码

apt update -y && apt install vim -y //默认没有编辑器,安装vim文本编辑器

pip3 install frappe-bench  //安装frappe-bench bench版本,以便可以使用bench get-app命令

bench get-app   //下载app到apps目录

bench --site  install-app  //site_name为你想要将app安装到的网站名称,名称在设置变量时已经设置,忘记的话到sites目录查看
bench --site  install-app  --user //有时会提示安装无可写的权限,所以使用加--user参数执行即可

echo -n "\n" >> sites/apps.txt 

cat sites/apps.txt

vim sites/apps.txt//如果apps.txt内没有出现app的名称,可以手动添加

将erpnext所有相关的容器关闭后重新启动,访问域名可以看到本地化完成。

erpnext_chinese中国本地化应用下载地址:https://gitee.com/yuzelin/erpnext_chinese.git

 

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注