搭建Icon私服
准备工作
本地环境
- Docker
- Node
服务端部署
- Docker
- Nginx
仓库
https://github.com/iconify/api
需要修改
- npm设置国内镜像
- build x86 本机 amd
- 添加.env配置项
部署
需要部署两个
- iconify/api
- antfu/icones
一个是后端服务通过链接返回svg
另一个是 svg playground 提供搜索 在线预览
构建后端
version: '3'
services:
icon_api:
image: registry.cn-hangzhou.aliyuncs.com/taoya7/iconify_api:latest
restart: always
ports:
- 3000:3000
构建前端
git clone https://github.com/antfu/icones
cd icones
pnpm i
pnpm run dev-pwa
pnpm run build ==> 将dist目录 移动到服务器即可
注意需要修改
验证
文件迁移到服务器后查看
查询
Base: https://icons-api.taoya.art/
/{prefix}/{icon}.svg动态生成 SVG
例子
加入颜色
加入大小
效果
原理分析
icons打包后dist/collections 包含所有icons-jsons。 所以文件特别大,总共打包后大小340mb。
依赖加入了electron, 后面可能会出本地版。
api部署启动后会下载 @iconify/json2.2.167 压缩包
文件历史版本可以在https://www.npmjs.com/package/@iconify/json看到
\