Keycloak安装配置
概述
这篇文章介绍了安装和配置 keycloak 的操作方法。
认识 keycloak
Keycloak 是一个开源的企业身份认证与访问(IAA)管理基金方案,可以给应用、服务添加统一身份认证、授权和用户管理能力,而无需从零编写复杂的登录、注册和权限管理代码。
主要功能与优点:
- 核心认证功能:提供单点登录(SSO),用户登录一次即可访问所有授权系统,支持多因素认证(MFA)、社交账号登录。
- 标准协议支持:支持OpenID Connect、OAuth 2.0、SAML 2.0等业界主流标准协议,能与绝大多数现代应用和api无缝集成。
- 集中管理:提供管理控制台,可以集中管理用户、角色、权限,提供用户自助服务的账号控制台,如密码重置、管理个人资料。
- 集成与扩展能力:内置LDAP和Active Directory集成,可与企业现有用户系统同步;同时提供用户存储SPI,允许开发者为任何自定义用户数据库编写扩展。
- 开源免费:Apache 2.0许可,功能强大无授权费用。
- 高可用:模块化架构支持集群部署和横向扩展,满足高可用需求。
相似产品:
- MaxKey:国产开源IAM-IDaas身份管理和认证产品,对国内社交账号(微信/QQ/微博/钉钉)支持较好。
- [Authentik](Welcome | authentik):现代、轻量,以用户友好的管理界面和内置的用户自助门户著称,是社区中常被提及的现代替代方案。
- ZITADEL:云原生、高性能,使用Go语言编写,资源占用低,天生为Kubernetes和多租户设计。
- Logto:发者优先,提供漂亮、现代化的登录界面,丰富的SDK,易用性高。
ESP8266太阳能气象站
ESP8266实现WiFi遥控小车
LuckFoxPico人脸识别
概述
这篇文章记录了使用 LuckFox Pico 开发板,搭配 SC3336 摄像头,实现人脸识别视频流播放。
原理
这里面用到了两大核心技术,使用 RKMPI 完成视频采集、处理、编码,使用 NPU 运行 RetinaFace 模型识别人脸位置:
- RKMPI ,全称是Rockchip Media Process Interface,它的核心价值就是充分利用芯片中的硬件模块(如VPU、ISP)来完成视频的捕获、处理和编码,数据无需经过CPU中转,大大提升了效率。RKMPI负责高效地“搬运”和处理视频数据,为NPU准备好每一帧图像。
- RetinaFace ,InsightFace 团队在 2019 年提出的单阶段人脸检测器,RetinaFace 模型在 NPU 上跑推理,精准地找出人脸位置。
flowchart LR
subgraph RKMPI [RKMPI 硬件加速流水线]
A[摄像头] --> B[VI 视频采集]
B --> C[VPSS 图像处理<br>缩放/格式转换]
C -- 原始图像帧 --> D[内存缓冲池]
D -- 编码任务 --> E[VENC 视频编码]
end
subgraph App [应用层逻辑]
F[应用程序] -- 调用 RKNN API --> G[NPU 运行RetinaFace]
end
D -- 获取帧数据 --> F
G -- 返回人脸坐标 --> F
F -- 绘制检测框 --> D
E -- H.264码流 --> H[RTSP 推流]
LuckFoxPico联网与搭建Web服务
友善R3S安装软路由
概述
这篇文件记录了使用友善 R3S 安装 ImmortalWrt 系统,搭建家庭软路由的安装配置过程。
组网
友善 NanoPi R3S (后简称R3S)搭载瑞芯微 RK3566 处理器,板载2G LPDDR4X 内存,支持 MicroSD,接口包含 1 个USB 3.0 Type-A接口,1个Type-C(5V2A)供电接口,2个千兆网口,适合当作软路由使用。设备原装了友善 FriendlyWrt 系统,这次我用来运行 ImmortalWrt 系统,搭建家庭网络软路由。
graph TD
Internet((("Internet"))) --- |光缆| ONU[光猫]
ONU --- |网线 WAN| Router{软路由}
Router --- |网线 LAN| Switch[交换机]
Switch --- |网线| Router1[路由器1]
Switch --- |网线| Router2[路由器2]
Switch --- |网线| Router3[路由器3]
Router1 --- |网线| Laptop(("电脑"))
Router2 -.-> |WiFi| Phone(("手机"))
Router3 -.-> |WiFi| Tablet(("平板"))
style Router fill:#ffcc00, stroke:#ff6600, stroke-width:4px, font-weight:bold
LuckFoxPico开发板初试
概述
这篇文章记录了 LuckFox Pico 开发板的初始化过程。
关于 LuckFox Pico 开发板
官网 LuckFox Pico 介绍:https://www.luckfox.com/EN-Luckfox-Pico
LuckFox Pico 开发板是一款高性价比的 Linux 微开发板,基于 Rockchip RV1103 芯片,为开发者提供了一个简单且高效的开发平台,支持多种接口包括 MIPI CSI、GPIO、UART、SPI、I2C、USB 等,方便快速开发和调试。
| 组件 | 参数 |
|---|---|
| 处理器 | Cortex A7@1.2GHz + RISC-V |
| NPU | 0.5TOPS, supports int4, int8 and int16 |
| ISP | Input 4M @30fps (Max) |
| 内存 | 64MB DDR2 |
| USB | USB 2.0 Host/Device |
| Camera | MIPI CSI 2-lane |
| GPIO | 24 × GPIO pins |
| Ethernet port | 10/100M Ethernet controller and embedded PHY |
| Default Storage | TF card (Not included) |
ubuntu服务器部署prometheus监控
curl工具的使用方法
概述
这篇文章介绍了一个开源功能强大的命令行网络工具 curl,curl 功能丰富,用法简单,被广泛用于命令行、终端的网络请求场景中。这篇文件简要介绍了 curl 的功能和使用方法。
curl 是什么
curl 是一个命令行工具,利用 URL 语法在命令行中完成数据传输的工具,支持文件上传和下载。
curl 支持的协议(参考官网介绍):
| 协议 | 详情 |
|---|---|
| Protocol | DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS, WSS |
| Proxies | SOCKS4, SOCKS5, HTTP, HTTPS (HTTP/1 and HTTP/2), tunneling, via unix domain sockets, haproxy, SOCKS+HTTP proxy chain |
| HTTP | GET, POST, PUT, HEAD, multipart formpost, HTTP/0.9, HTTP/1.0, HTTP/1.1, HTTP/2 (h2c, h2, prior knowledge), HTTP/3 (dual connect h1/h2 + h3 or h3-only), HSTS, Alt-Svc, cookies, PSL, etags, transfer compression, ranges, custom headers, custom method, follow redirects |
| FTP | IPv6 (EPRT, EPSV), STLS, upload/download, append, range, passive/active, kerberos, directory listing, custom commands |
| SCP + SFTP | known hosts, md5/sha256 fingerprint, compression, upload/download, directory listing |
| TLS | 1.0 - 1.3, mutual authentication, STARTTLS, OCSP stapling, ECH, False Start, key pinning, PQC ready, session resumption, early data, export/import sessions |
| QUIC | 0RTT handshakes |
| Auth | Basic, Plain, Digest, CRAM-MD5, SCRAM-SHA, NTLM, Negotiate, Kerberos, Bearer tokens, AWS Sigv4, SASL, .netrc |
| HTTP compression | gzip, brotli and zstd |
| Name resolving | DNS-over-HTTPS, custom address for host, name+port redirect, custom DNS servers, DNS caching, HTTPS RR |
| Connection | connection reuse, Interface binding, Happy Eyeballs, IPv4/IPv6-only, unix domain sockets, TCP keepalive, TCP Fast Open, TCP Nodelay, MPTCP, VLAN priority, IP Type Of Service |
| Transfers | transfer rate limiting, request rate limiting, stall detection, retries, timeouts |
| URLs | Unlimited amount, parallel and serial transfers, globbing |
| Output | IDN hostnames, custom info from transfer, metadata as JSON, per content-disposition, libcurl source code, bold headers |

