Pipe 是一款小而美的开源博客平台,专为程序员设计。Pipe 有着非常活跃的社区,文章自动推送到社区后可以让很多人看到,产生丰富的交流互动。
- 多用户博客平台
- Markdown / Emoji
- 聚合分类 / 标签
- 自定义导航
- 多主题 / 多语言
- Atom / RSS / Sitemap
- 文章搜索
- Hexo/Jekyll 导入 / 导出
- 可配置动静分离
- 支持 SQLite / MySQL
请注意:我们不建议通过发布包或者源码构建部署,因为这样的部署方式在将来有新版本发布时升级会比较麻烦。 这两种方式请仅用于本地试用,线上生产环境建议通过 Docker 部署。
获取最新镜像:
docker pull b3log/pipe
-
使用 MySQL
先手动建库(库名
pipe
,字符集使用utf8mb4
,排序规则utf8mb4_general_ci
),然后启动容器:docker run --detach --name pipe --network=host \ b3log/pipe --mysql="root:123456@(127.0.0.1:3306)/pipe?charset=utf8mb4&parseTime=True&loc=Local" --runtime_mode=prod --port=5897 --server=http://localhost:5897
为了简单,使用了主机网络模式来连接主机上的 MySQL。
-
使用 SQLite
docker run --detach --name pipe --volume ~/pipe.db:/opt/pipe/pipe.db --publish 5897:5897 \ b3log/pipe --sqlite="/opt/pipe/pipe.db" --runtime_mode=prod --port=5897 --server=http://localhost:5897
启动参数说明:
--port
:进程监听端口--server
:访问时的链接
完整启动参数的说明可以使用 -h
来查看。
- 拉取最新镜像
- 重启容器
可参考这里编写一个重启脚本,并通过 crontab 每日凌晨运行来实现自动更新。
Pipe 使用 GPLv3 开源协议。
- jQuery:JavaScript 工具库,用于主题页面
- Vue.js:渐进式 JavaScript 框架
- Nuxt.js:Vue.js 框架
- Vuetify:Vue.js 的 Material 组件框架
- Vditor: 浏览器端的 Markdown 编辑器
- Gin:又快又好用的 golang HTTP web 框架
- GORM:极好的 golang ORM 库
- Blackfriday:golang Markdown 处理器
- SQLite:使用广泛的嵌入式 SQL 引擎
- GCache:golang 缓存库
- Gulu:Go 语言常用工具库,这个轱辘还算圆