Ubuntu server 22.04 LTS下安装ERPNEXT V15

发布时间:2024年01月13日

参考了安装文档/ERPNEXT v15安装指南.md · 笑熬浆糊/ERPNext相关文档 - Gitee.com

感谢大侠笑熬浆糊和《ERPNEXT 落地实施交流》群(群号756185211),帮助少走了很多弯路。

本人的Ubuntu server 22.04 LTS系统是全新安装的。

  1. 如果当前登录的是root用户,就请新建一个用于安装ERP的sudo用户。由于本人安装系统是创建了非root用户,所以这一步跳过。

    adduser [frappe-user]
    usermod -aG sudo [frappe-user]
  2. 更新系统并重启系统,使用root用户。

    apt update && apt upgrade -y && shutdown -r now
  3. 使用步骤1所建好的sudo用户,下载node.js

    curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash -
  4. 安装操作系统所需的各种依赖包

    sudo apt install -y python3.10-dev python3-setuptools python3-pip python3-distutils python3.10-venv software-properties-common mariadb-server mariadb-client redis-server nodejs xvfb libfontconfig libmysqlclient-dev nginx git ansible pkg-config libcairo2-dev libjpeg-dev libgif-dev librsvg2-dev
  5. 将Python的pip源改成国内源,有助于后面安装frappe时提高速度和成功率。

    pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
    pip config set install.trusted-host mirrors.aliyun.com
  6. 接下来开始配置MariaDB,用nano编辑my.cnf文件。

    sudo nano /etc/mysql/my.cnf

    将光标移动到最后空白行,复制以下文本内容,粘贴后注意格式和换行要同下方,ctrl + X返回命令行,保存my.cnf。

    [mysqld]
    character-set-client-handshake = FALSE 
    character-set-server = utf8mb4 
    collation-server = utf8mb4_unicode_ci 
    
    [mysql]
    default-character-set = utf8mb4
  7. 重启sql

    sudo service mysql restart
  8. 开始mysql的安全配置

    sudo mysql_secure_installation

    第一个输入数据库密码对话框出来的时候,直接敲回车代表没有密码,剩下的按照下面选择:

    # 注:运行结果用 ··· 代替
    Enter current password for root (enter for none):  # 输入root(mysql)的密码,初次安装默认没有,直接回车 
     ... 
    Switch to unix_socket authentication [Y/n] n # 是否切换到unix套接字身份验证[Y/n]
     ... 
    Change the 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 # 是否禁止root远程登录,建议不开启
     ... 
    Remove test database and access to it? [Y/n] n # 是否删除test数据库,可以保留
    ...
    Reload privilege tables now? [Y/n] y # 是否重新加载权限表,也可以直接回车
     ... 
    Thanks for using MariaDB! # 看到这句话证明设置成功
  9. 安装yarn

    sudo npm install -g yarn
    
    #yarn config get registry查看源, 如果官方源请设置为以下国内源
    本人尝试了多次,即使设置了国内的源,使用#yyarn config get registry,查看也确实是国内的,但是后续下载还是从国外的默认源下载,所以,最后没有修改registry。
  10. 查看版本,对照一下,这一步不做也行.

    node -v && npm -v && python3 -V && pip3 -V && yarn -v
  11. 安装bench,即erpnext系统的命令行管理工具,类似windows系统的程序管理器。

    sudo -H pip3 install frappe-bench
  12. 使用bench命令安装frappe框架。frappe-bench是安装frappe框架的目录名称。

    bench init --frappe-branch version-15 frappe-bench --frappe-path=https://gitee.com/mirrors/frappe --verbose
  13. 再将安装的系统用户分配一下执行权限。

    chmod -R o+rx /home/[frappe-user]/
  14. 进入bench目录

    cd frappe-bench
  15. 新建站点,名字自己取,取代这里和后续命令行中的{sitename},安装时会提示输入数据库root账号的密码,新站点系统管理员账号administator(后续网页登录frappe时会用到) 密码,其中数据库root账号密码须与上述数据库安装时密码一致

    bench new-site {sitename}
  16. 设置为生产环境,即用supervisorctl管理所有进程,使用nginx做反向代理。如果安装只是为了做开发,可以跳过这一步。

    sudo bench setup production {frappe-user}
  17. 下载app

    bench get-app --branch version-15 https://gitee.com/qinyanwan/payments
    bench get-app --branch version-15 erpnext https://gitee.com/mirrors/erpnext 
    bench get-app https://gitee.com/qinyanwan/print_designer
  18. 通过修改redis的配置文件/etc/redis/redis.conf,修改redis-server的端口为11000,

    建议先备份

    sudo cp /etc/redis/redis.conf /etc/redis/redis.conf.bak

    用vi编辑redis.conf文件

    sudo vi /etc/redis/redis.conf

    找到 port 6379,如下图所示,改为11000

    保存退出,再重启redis服务

    sudo service redis restart

    如果使用默认的6379,安装erpnext的时会出错,如下图所示

  19. 安装app,安装erpnext

    bench --site {sitename} install-app payments
    bench --site {sitename} install-app erpnext
    bench --site {sitename} install-app print_designer
  20. 安装完后大概率erpnext还没运行起来,使用bench doctor 显示 workers online:0 可以通过重新运行了一边步骤16? sudo bench setup production {frappe-user},运行erpnext,这是网页就可以访问了,同样的,如果没开启生产环境,这一步也可以略过。

    bench doctor
  21. 查看所需的app是否安装正确,可以用这个命令

    bench version
  22. 最后解决可能存在PDF打印中文显示乱码所需要的工具

    wget https://gitee.com/qinyanwan/erpnext/releases/download/v13.29.0/wkhtmltox_0.12.6.1-2.jammy_amd64.deb
    sudo dpkg -i wkhtmltox_0.12.6.1-2.jammy_amd64.deb

    如果安装提示有缺少依赖的错误,执行下面命令。

    sudo apt -f install

    现在,我们可以检查wkhtmltopdf 库是否正确安装并确认是否为所需版本:

    wkhtmltopdf –version

    显示wkhtmltopdf 0.12.6 (with patched qt)即是正确版本

  23. 如导出PDF乱码,需要另外安装字体

    sudo apt-get install ttf-wqy-zenhei -y
    sudo apt-get install ttf-wqy-microhei -y

其他

汉化、本地化请登录?则霖信息技术(深圳)有限公司 - 则霖信息技术(深圳)有限公司?按需安装相关APP。

文章来源:https://blog.csdn.net/everestzhang/article/details/135572376
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。