当前位置: 首页 > news >正文

使用Ubuntu 22.04安装Frappe-Bench【二】

系列文章目录

第一章 使用VMware创建Ubuntu 22.04【一】


文章目录

  • 系列文章目录
  • 前言
    • 什么是Frappe-Bench?
    • 使用安装ERPNext能实现什么效果? 官网给了一个说明
  • 一、使用Ubuntu 22.04安装Frappe-Bench
    • 一、安装要求
    • 二、安装命令
    • 三、 可能出现问题
  • 总结


前言

什么是Frappe-Bench?

Frappe-Bench是一个开源的应用程序集成框架,用于开发和管理Web应用程序。它是Frappe框架的一部分,其中包含许多有用的工具和库,可以帮助开发人员快速构建和部署Web应用程序。Frappe-Bench的目标是简化应用程序开发的过程,并提供一种灵活的方式来管理和扩展应用程序。它提供了一个命令行界面,可以轻松地创建和管理应用程序,包括数据库管理、安装和管理依赖项等。总之,Frappe-Bench是一个强大的工具,用于创建、管理和扩展Web应用程序。

使用安装ERPNext能实现什么效果? 官网给了一个说明

官网跳转
在这里插入图片描述

在这里插入图片描述


提示:以下是本篇文章正文内容,下面提供安装Frappe基础环境

一、使用Ubuntu 22.04安装Frappe-Bench

一、安装要求

系统环境:Ubuntu 22.04
硬件: 2核4G (最低配)

安装要求:

版本14基础架构::
Node.js 14 or 16
MariaDB 10.6.6+版本15基础架构:
Node.js 18
MariaDB 10.6.6+Farppe 需要用到的版本:
Python 3.10 or Python 3.11
Redis 6                                       (缓存)
yarn 1.12+                                    (js 依赖管理)
pip 20+                                       (py 依赖管理)
wkhtmltopdf (version 0.12.5 with patched qt)  (创建PDF)
cron                                          (定时任务)
NGINX                                         (接口代理转发)

二、安装命令

从桌面找到控制台(Terminal)打开后输入下方命令

1、新建管理员账号并切换

su 
--输入管理员密码# 忘记密码,通过下方命令重置
sudo passwd#利用管理员新建一个ERP系统用户
adduser fra#我这里新建了个 fra的账号
user fra
passwd fra#将用户添加到sudo组 相当于赋予普通用户ROOT权限,不过运行其他命令前需要加sudo
usermod -aG sudo fra#切换管理员账户
su - fra

2、更新apt安装源,享受更快的下载速度和更稳定的软件包更新。

#进入目录 备份sources.list文件
cd /etc/apt
sudo cp -a sources.list sources.list.backup#浏览器打开下方链接,选择对应系统版本
#使用清华的源替换掉自带的信息
https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/#使用gedit打开sources.list,粘贴上面的内容
sudo nano sources.list#保存和退出
ctrl + s 保存信息
ctrl + x 退出界面

3、设置DNS解析,防止系统出现无法解析软件源的域名

#编辑配置文件
sudo nano /etc/resolv.conf#加入解析地址
nameserver 8.8.8.8
nameserver 8.8.4.4#保存和退出
ctrl + s 保存信息
ctrl + x 退出界面

4、更新和升级服务器的一些依赖

sudo apt update -y && sudo apt upgrade -y && shutdown -r now#解读
apt update              更新本地包列表
apt upgrade -y          智能地处理与新版本包的依赖关系
shutdown -r now		    重启机器#下方一条命令可忽略运行
sudo apt-get dis-upgrade -y  解决依赖性问题,尝试解决和移除。会造成文件依赖的破坏风险

5、Install ssh 如要远程连接的话,选择安装

sudo apt install openssh-server    安装过程中需要输入Y和回车即可
ip addr show    记录服务器IP可通过第三方软件进行远程连接

6、如要Vim的话,选择安装

sudo apt -y install vim  使用笔记本方便编辑记录

7、安装 curl 和node.js18

#下载curl 使用curl命令指定下载链接到本地存储库
sudo snap install curl
curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash -#安装node到系统
sudo apt-get install nodejs -y#Yarn NPM的包管理工具
sudo npm install -g yarn#查看版本node版本是否是18+
npm -v && node -v && yarn -v 

8、安装对应软件

sudo apt install -y python3.10-dev python3-setuptools python3-pip python3-distutils virtualenv python3.10-venv software-properties-common mariadb-server mariadb-client redis-server xvfb libfontconfig wkhtmltopdf libmysqlclient-dev nginx cron wget ansible pkg-config libcairo2-dev libjpeg-dev libgif-dev librsvg2-dev ttf-wqy-zenhei ttf-wqy-microhei ca-certificates locales tzdata supervisor

9、配置MariaDB

#打开配置文件
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#保存和退出
ctrl + s 保存信息
ctrl + x 退出界面#配置数据库
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf[server]
user = mysql
pid-file = /run/mysqld/mysqld.pid
socket = /run/mysqld/mysqld.sock
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
bind-address = 127.0.0.1
query_cache_size = 16M
log_error = /var/log/mysql/error.log[mysqld]
innodb-file-format=barracuda
innodb-file-per-table=1
innodb-large-prefix=1
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci#保存和退出
ctrl + s 保存信息
ctrl + x 退出界面#重启服务
sudo service mysql restart#运行命令打开配置信息
sudo mysql_secure_installation#配置过程
Enter current password for root (enter for none):  # 输入(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! # 看到这句话证明设置成功

10、安装配置Python中pip 切换国内源

#先查看pip版本如果大于20+,则不需要运行升级命令
pip --version# 升级 pip 到最新的版本  -版本大于20+ 可忽略
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip#配置清华软件源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple# root用户也更新一下pip源
sudo pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

11、安装Frappe-Bench

#安装frappe-bench
sudo -H pip3 install frappe-bench#查看版本并确定是否安装成功
bench --version

12、初始化Frappe-Bench

#网络可能会超时 --默认源是github
bench init frappe-bench#或者使用国内源下载 --修改源为gitee
bench init --frappe-branch version-15 frappe-bench --frappe-path=https://gitee.com/mirrors/frappe --verbose #进入目录启动
cd frappe-bench/
bench start

三、 可能出现问题

1、在主机中无法正常复制内容到虚拟机

出现这种无法正常复制的问题一般是虚拟机中组件安装异常,需要手工卸载并安装

#卸载
sudo apt autoremove open-vm-tools#重新安装
sudo apt install open-vm-tools -y
sudo apt install open-vm-tools-desktop -y#查看是否安装成功
vmware-user

2、使用sudo apt update运行异常,“Temporary failure resolving ‘security.ubuntu.com’” 表示你的系统无法解析安全软件源的域名。

#编辑配置文件
sudo nano /etc/resolv.conf#加入解析地址
nameserver 8.8.8.8
nameserver 8.8.4.4

3、镜像源下载数据缓慢,切换数据源

#unbantu镜像源参考
https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/#pip源参考
#国内几个站点如下:
https://pypi.douban.com/simple/ 豆瓣
http://mirrors.aliyun.com/pypi/simple/ 阿里
http://pypi.hustunique.com/simple/ 华中理工大学
http://pypi.sdutlinux.org/simple/ 山东理工大学
http://pypi.mirrors.ustc.edu.cn/simple/ 中国科学技术大学
https://pypi.tuna.tsinghua.edu.cn/simple/ 清华

总结

以上就是今天要介绍的内容,本文简单介绍了Frappe-Bench的安装初始化,如遇到安装问题,请关注本社区可及时交流和讨论

相关文章:

使用Ubuntu 22.04安装Frappe-Bench【二】

系列文章目录 第一章 使用VMware创建Ubuntu 22.04【一】 文章目录 系列文章目录前言什么是Frappe-Bench?使用安装ERPNext能实现什么效果? 官网给了一个说明 一、使用Ubuntu 22.04安装Frappe-Bench一、安装要求二、安装命令三、 可能出现问题 总结 前言 …...

MySQL增删改查

1.创建数据库: 使用CREATE DATABASE语句 CREATE DATABASE school;show databases; 列出MySQL数据库管理系统的数据库列表 2.切换数据库: 使用USE语句选择要操作的数据库 USE school;select database (); 当前所在库mysql> select…...

Java跳出循环的四种方式

1、continue,break,return continue:跳出当前层循环的当前语句,执行当前层循环的下一条语句。   continue标签 break:跳出当前层循环。 break标签:多层循环时,跳到具体某层循环。 return:结束所有循环…...

直播预告|飞思实验室暑期公益培训7月10日正式开启,报名从速!

01 培训背景 很荣幸地向大家宣布:卓翼飞思实验室将于7月10日正式开启为期两个月的暑期公益培训!本次培训为线上直播,由中南大学计算机学院特聘副教授,RflySim平台总研发负责人戴训华副教授主讲。 培训将基于“RflySim—智能无人…...

3-2 梯度与反向传播

3-2 梯度与反向传播 主目录点这里 梯度的含义 可以看到红色区域的变化率较大,梯度较大;绿色区域的变化率较小,梯度较小。 在二维情况下,梯度向量的方向指向函数增长最快的方向,而其大小表示增长的速率。 梯度的计算 …...

【qt】如何获取本机的IP地址?

需要用到这个类QHostInfo和pro里面添加network模块 用这个类的静态函数forName()来获取该主机名的信息 返回的就是这个类 这个QHostInfo类就包括主机的IP地址信息 用静态函数addresses()来获取 返回的是一个QHostAddress的容器 QList<QHostAddress>addrList hostIn…...

芯片的PPA-笔记

写在前面&#xff1a;这个仅记录自己对芯片PPA的一些思考&#xff0c;不一定正确&#xff0c;还请各位网友思辨的看待&#xff0c;欢迎大家谈谈自己的想法。 1 此次笔记的起因 记录的原因&#xff1a;自己在整理这段时间的功耗总结&#xff0c;又看到工艺对功耗的影响&#x…...

2024阿里巴巴全球数学竞赛决赛中的数列题解析(分析与方程方向第4题)

早点关注我&#xff0c;精彩不错过&#xff01; 上周给大家聊了一道有LLM背景的阿里数赛题&#xff0c;详情请戳&#xff1a; 2023阿里巴巴全球数学竞赛决赛中的LLM背景题解析&#xff08;应用与计算数学部分第2题&#xff09; 看起来大家还比较喜欢看这种具体问题求解和思路分…...

学java的第3天 后端商城小程序工作

1.数据库的大坑 特殊字段名 ’我的图片表中有一个字段是描述我写成desc了&#xff0c;正好是mysql中的关键字 就不能使用了 2.后端编写 2.1可以把请求分开 在商品浏览页中 只显示商品的大致信息 当用户再点击其他按钮时在发出请求 2.2把请求合并 把数据整合到一起 利用ass…...

DevOps实战:使用GitLab+Jenkins+Kubernetes(k8s)建立CI_CD解决方案

一.系统环境 本文主要基于Kubernetes1.21.9和Linux操作系统CentOS7.4。 服务器版本docker软件版本Kubernetes(k8s)集群版本CPU架构CentOS Linux release 7.4.1708 (Core)Docker version 20.10.12v1.21.9x86_64CI/CD解决方案架构图:CI/CD解决方案架构图描述:程序员写好代码之…...

Apache Seata配置管理原理解析

本文来自 Apache Seata官方文档&#xff0c;欢迎访问官网&#xff0c;查看更多深度文章。 本文来自 Apache Seata官方文档&#xff0c;欢迎访问官网&#xff0c;查看更多深度文章。 Apache Seata配置管理原理解析 说到Seata中的配置管理&#xff0c;大家可能会想到Seata中适配…...

深入理解C# log4Net日志框架:功能、使用方法与性能优势

文章目录 1、log4Net的主要特性2、log4Net框架详解配置日志级别 3、log4Net的使用示例4、性能优化与对比5、总结与展望 在软件开发过程中&#xff0c;日志记录是一个不可或缺的功能。它可以帮助开发者追踪错误、监控应用程序性能&#xff0c;以及进行调试。在C#生态系统中&…...

BDD 100K dataset 的标签数据结构(json文件)

最近在筛选自己需要的labels&#xff0c;所以要弄清楚这个数据集的数据结构才行&#xff1a; 1.整个json文件以列表形式储存 2.每张图片以一个字典形式储存 3.存储图片的字典内的以‘name’为key的键值对对应的‘value’是我需要的图片名称信息 4.存储图片的字典内的以‘label…...

AcWing 1550:完全二叉搜索树

【题目来源】https://www.acwing.com/problem/content/1552/【题目描述】二叉搜索树 (BST) 递归定义为具有以下属性的二叉树&#xff1a; &#xff08;1&#xff09;若它的左子树不空&#xff0c;则左子树上所有结点的值均小于它的根结点的值 &#xff08;2&#xff09;若它的右…...

使用kali Linux启动盘轻松破解Windows电脑密码

破解分析文章仅限用于学习和研究目的&#xff1b;不得将上述内容用于商业或者非法用途&#xff0c;否则&#xff0c;一切后果请用户自负。谢谢&#xff01;&#xff01; 效果展示&#xff1a; 使用kali Linux可以轻松破解Windows用户及密码 准备阶段&#xff1a; &#xff08…...

Vue2中跨组件共享公共属性的方法、优缺点与实现

一、vuex&#xff08;最常用&#xff09; 优缺点 优点&#xff1a;集中管理状态&#xff0c;组件间解耦&#xff0c;易于调试和测试。缺点&#xff1a;学习成本较高&#xff0c;对于小项目可能过于复杂。 适用场景 大型、复杂的单页面应用&#xff08;SPA&#xff09;。需要全局…...

2024亚太杯数学建模竞赛(B题)的全面解析

你是否在寻找数学建模比赛的突破点&#xff1f;数学建模进阶思路&#xff01; 作为经验丰富的数学建模团队&#xff0c;我们将为你带来2024亚太杯数学建模竞赛&#xff08;B题&#xff09;的全面解析。这个解决方案包不仅包括完整的代码实现&#xff0c;还有详尽的建模过程和解…...

【PWN · ret2syscall | GoPwn】[2024CISCN · 华中赛区]go_note

一道GoPwn&#xff0c;此外便是ret2syscall的利用。然而过程有不小的曲折&#xff0c;参考 返璞归真 师傅的wp&#xff0c;堪堪完成了复现。复现过程中&#xff0c;师傅也灰常热情回答我菜菜的疑问&#xff0c;感谢&#xff01;2024全国大学生信息安全竞赛&#xff08;ciscn&am…...

关于学习方法的优化

这是一种新的学习方法&#xff0c;一种新的学习形式&#xff0c;可以通过歌唱的方式&#xff0c;运用&#xff0c;把自己每天要进行的内容进行一个复习&#xff0c;进行一个重复&#xff0c;这样可以实现随时随地进行一个学习&#xff0c;这样可以帮助快速走出来&#xff01; 您…...

万界星空科技MES系统中的排版排产功能

在当今高度竞争的市场环境中&#xff0c;企业对于生产管理的效率和质量要求日益提高。作为智能制造的重要组成部分&#xff0c;制造执行系统&#xff08;MES&#xff09;以其强大的功能&#xff0c;在提升企业生产能力方面发挥着不可替代的作用。万界星空科技作为行业领先的智能…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述&#xff1a;iview使用table 中type: "index",分页之后 &#xff0c;索引还是从1开始&#xff0c;试过绑定后台返回数据的id, 这种方法可行&#xff0c;就是后台返回数据的每个页面id都不完全是按照从1开始的升序&#xff0c;因此百度了下&#xff0c;找到了…...

WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)

一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解&#xff0c;适合用作学习或写简历项目背景说明。 &#x1f9e0; 一、概念简介&#xff1a;Solidity 合约开发 Solidity 是一种专门为 以太坊&#xff08;Ethereum&#xff09;平台编写智能合约的高级编…...

深度学习水论文:mamba+图像增强

&#x1f9c0;当前视觉领域对高效长序列建模需求激增&#xff0c;对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模&#xff0c;以及动态计算优势&#xff0c;在图像质量提升和细节恢复方面有难以替代的作用。 &#x1f9c0;因此短时间内&#xff0c;就有不…...

根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的----NTFS源代码分析--重要

根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的 第一部分&#xff1a; 0: kd> g Breakpoint 9 hit Ntfs!ReadIndexBuffer: f7173886 55 push ebp 0: kd> kc # 00 Ntfs!ReadIndexBuffer 01 Ntfs!FindFirstIndexEntry 02 Ntfs!NtfsUpda…...

Docker拉取MySQL后数据库连接失败的解决方案

在使用Docker部署MySQL时&#xff0c;拉取并启动容器后&#xff0c;有时可能会遇到数据库连接失败的问题。这种问题可能由多种原因导致&#xff0c;包括配置错误、网络设置问题、权限问题等。本文将分析可能的原因&#xff0c;并提供解决方案。 一、确认MySQL容器的运行状态 …...

华为OD最新机试真题-数组组成的最小数字-OD统一考试(B卷)

题目描述 给定一个整型数组,请从该数组中选择3个元素 组成最小数字并输出 (如果数组长度小于3,则选择数组中所有元素来组成最小数字)。 输入描述 行用半角逗号分割的字符串记录的整型数组,0<数组长度<= 100,0<整数的取值范围<= 10000。 输出描述 由3个元素组成…...

【免费数据】2005-2019年我国272个地级市的旅游竞争力多指标数据(33个指标)

旅游业是一个城市的重要产业构成。旅游竞争力是一个城市竞争力的重要构成部分。一个城市的旅游竞争力反映了其在旅游市场竞争中的比较优势。 今日我们分享的是2005-2019年我国272个地级市的旅游竞争力多指标数据&#xff01;该数据集源自2025年4月发表于《地理学报》的论文成果…...

Python 高级应用10:在python 大型项目中 FastAPI 和 Django 的相互配合

无论是python&#xff0c;或者java 的大型项目中&#xff0c;都会涉及到 自身平台微服务之间的相互调用&#xff0c;以及和第三发平台的 接口对接&#xff0c;那在python 中是怎么实现的呢&#xff1f; 在 Python Web 开发中&#xff0c;FastAPI 和 Django 是两个重要但定位不…...

react菜单,动态绑定点击事件,菜单分离出去单独的js文件,Ant框架

1、菜单文件treeTop.js // 顶部菜单 import { AppstoreOutlined, SettingOutlined } from ant-design/icons; // 定义菜单项数据 const treeTop [{label: Docker管理,key: 1,icon: <AppstoreOutlined />,url:"/docker/index"},{label: 权限管理,key: 2,icon:…...

简单介绍C++中 string与wstring

在C中&#xff0c;string和wstring是两种用于处理不同字符编码的字符串类型&#xff0c;分别基于char和wchar_t字符类型。以下是它们的详细说明和对比&#xff1a; 1. 基础定义 string 类型&#xff1a;std::string 字符类型&#xff1a;char&#xff08;通常为8位&#xff09…...