实践reflex:一个使用纯Python构建全栈web应用的库

reflex 是一个使用纯Python构建全栈web应用的库,但是需要使用node,所以你懂的。

https://gitee.com/mirrors/Pynecone/tree/main/docs/zh/zh_cn

安装reflex对于Linux系统,可能会比较顺利,但是对于FreeBSD系统,在安装时会比较慢,因为有些库需要编译安装,比较费时间。

安装

安装reflex

复制代码
pip3 install reflex

对于FreeBSD,有些库编译安装很慢,需要在python3.11环境下,使用pkg安装,如:

pkg install py311-watchfiles

安装工具

pip安装好之后,还需要unzip和curl

安装fnm

Ubuntu下使用apt install来安装cargo

复制代码
apt install cargo

安装fnm

然后cargo install fnm 安装 fnm,需要一会儿时间

复制代码
cargo install fnm

安装之前可以先设置cargo的加速镜像:

在.cargo目录下创建config文件,文件内容:

复制代码
[source.crates-io]
replace-with = 'mirror'

[source.mirror]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

创建reflex项目

写个小项目,创建app1目录,在目录里执行eflex init

复制代码
skywalk@ubjail1:~$ mkdir app1
skywalk@ubjail1:~$ cd app1
skywalk@ubjail1:~/app1$ reflex init

项目创建好后,运行即可

复制代码
reflex run

调试

reflex init 报错curl: command not found

────────────────────────────── Initializing app1 ───────────────────────────────

Installing https://bun.sh/install failed with exit code 1

/tmp/tmp29talh0o: line 134: curl: command not found

error: Failed to download bun from

"https://github.com/oven-sh/bun/releases/download/bun-v1.1.10/bun-linux-x64-base

line.zip"

Run with --loglevel debug for the full log.

An error occurred while downloading fnm package: _ssl.c:990: The handshake

安装curl

报错:An error occurred while downloading fnm package: timed out

手工安装fnm

复制代码
cargo install fnm

cargo安装fnm报错

root@ubjail1:~# cargo install fnm

Updating crates.io index

error: failed to download from `https://static.crates.io/crates/fnm/1.37.1/download\`

Caused by:

60 SSL peer certificate or SSH remote key was not OK (server certificate verification failed. CAfile: none CRLfile: none)

后来第二天再install就成功了

当然cargo还可以添加镜像,参考初识Cargo-Rust的包管理器_cargo,rust包管理器-CSDN博客

cargo的镜像

在.cargo目录下创建config文件,文件内容:

复制代码
[source.crates-io]
replace-with = 'mirror'

[source.mirror]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

reflex初始化报错

reflex init

──────────────────────── Initializing app1 ────────────────────────

ELF binary type "0" not known.

在Jail里碰到过好几次这样的问题。

在宿主机FreeBSD里安装linux模块试试

还是报错。。。。

这个问题一直都没有解决。

先不用jail了,用bhyve 虚拟子系统试试。

相关推荐
qetfw6 分钟前
UOS DHCP Relay:跨网段分配与 IP、DNS、网关验证
linux·服务器·网络·tcp/ip·uos
明航咨询-陈老师1 小时前
ITSS运行维护服务能力成熟度认证技术纵深:标准模型、等级路径、2026审核趋势与CS/CMMI对比
服务器·数据库·cmmi
szxinmai主板定制专家2 小时前
X86 工控机 vs RK3588 异构主控:AMR 控制器 BOM、散热、长期运维对比
运维·stm32·单片机·嵌入式硬件·fpga开发·am62x
缓慢更新2 小时前
AI 辅助生成单测:从接口定义到用例的流水线
java·服务器·前端·网络·数据库·人工智能
叼烟扛炮2 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
ynchyong2 小时前
Linux 有两个 “版本“
linux·发行版·内核版本
叼烟扛炮2 小时前
Linux 学习笔记(四十四):HTTP 协议解析与极简 Web 服务器实战
linux·服务器·学习
叼烟扛炮3 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
Decay__3 小时前
09_MySQL 闪回与时间点恢复 —— binlog 回放、mysqlbinlog、PITR 与误删恢复
运维·数据库·sql·mysql·架构
久曲健的测试窝3 小时前
2026软件测试工具选型指南:双模式如何化解UI脚本维护难题
运维·人工智能·科技·aigc