Home

Awesome

<p align = "center"> <img alt="Pipe" src="https://b3log.org/images/brand/pipe-128.png"> <br><br> 小而美的博客平台,为未来而构建 <br><br> <a title="Build Status" target="_blank" href="https://github.com/88250/pipe/actions/workflows/gotest.yml"><img src="https://img.shields.io/github/actions/workflow/status/88250/pipe/gotest.yml?style=flat-square"></a> <a title="Docker Image CI" target="_blank" href="https://github.com/88250/pipe/actions"><img src="https://img.shields.io/github/actions/workflow/status/88250/pipe/dockerimage.yml?label=Actions&logo=github&style=flat-square"></a> <a title="Go Report Card" target="_blank" href="https://goreportcard.com/report/github.com/88250/pipe"><img src="https://goreportcard.com/badge/github.com/88250/pipe?style=flat-square"></a> <a title="Coverage Status" target="_blank" href="https://coveralls.io/github/88250/pipe"><img src="https://img.shields.io/coveralls/github/88250/pipe.svg?style=flat-square&color=CC9933"></a> <a title="Code Size" target="_blank" href="https://github.com/88250/pipe"><img src="https://img.shields.io/github/languages/code-size/88250/pipe.svg?style=flat-square"></a> <a title="GPLv3" target="_blank" href="https://github.com/88250/pipe/blob/master/LICENSE"><img src="https://img.shields.io/badge/license-GPLv3-orange.svg?style=flat-square"></a> <br> <a title="Releases" target="_blank" href="https://github.com/88250/pipe/releases"><img src="https://img.shields.io/github/release/88250/pipe.svg?style=flat-square"></a> <a title="Release Date" target="_blank" href="https://github.com/88250/pipe/releases"><img src="https://img.shields.io/github/release-date/88250/pipe.svg?style=flat-square&color=99CCFF"></a> <a title="Docker Pulls" target="_blank" href="https://hub.docker.com/r/b3log/pipe"><img src="https://img.shields.io/docker/pulls/b3log/pipe.svg?style=flat-square&color=blueviolet"></a> <a title="Docker Image Size" target="_blank" href="https://hub.docker.com/r/b3log/pipe"><img src="https://img.shields.io/docker/image-size/b3log/pipe.svg?style=flat-square&color=ff96b4"></a> <br> <a title="GitHub Commits" target="_blank" href="https://github.com/88250/pipe/commits/master"><img src="https://img.shields.io/github/commit-activity/m/88250/pipe.svg?style=flat-square"></a> <a title="Last Commit" target="_blank" href="https://github.com/88250/pipe/commits/master"><img src="https://img.shields.io/github/last-commit/88250/pipe.svg?style=flat-square&color=FF9900"></a> <a title="GitHub Pull Requests" target="_blank" href="https://github.com/88250/pipe/pulls"><img src="https://img.shields.io/github/issues-pr-closed/88250/pipe.svg?style=flat-square&color=FF9966"></a> <a title="Hits" target="_blank" href="https://github.com/88250/hits"><img src="https://hits.b3log.org/88250/pipe.svg"></a> <br><br> <a title="GitHub Watchers" target="_blank" href="https://github.com/88250/pipe/watchers"><img src="https://img.shields.io/github/watchers/88250/pipe.svg?label=Watchers&style=social"></a> <a title="GitHub Stars" target="_blank" href="https://github.com/88250/pipe/stargazers"><img src="https://img.shields.io/github/stars/88250/pipe.svg?label=Stars&style=social"></a> <a title="GitHub Forks" target="_blank" href="https://github.com/88250/pipe/network/members"><img src="https://img.shields.io/github/forks/88250/pipe.svg?label=Forks&style=social"></a> <a title="Author GitHub Followers" target="_blank" href="https://github.com/88250"><img src="https://img.shields.io/github/followers/88250.svg?label=Followers&style=social"></a> </p> <p align="center"> <a href="https://github.com/88250/pipe/blob/master/README_en_US.md">English</a> </p>

💡 简介

Pipe 是一款小而美的开源博客平台,专为程序员设计。Pipe 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

欢迎到 Pipe 官方讨论区了解更多。同时也欢迎关注 B3log 开源社区微信公众号 B3log开源

b3logos.jpg

🗃 案例

✨ 功能

🎨 界面

开始使用

start.png

管理后台

console.png

编辑文章

post.png

主题选择

theme.png

主题 Gina

gina.png

🛠️ 安装

Pipe 仅支持通过 Docker 进行部署,如果你需要从源码构建可参考这里

Docker 部署

获取最新镜像:

docker pull b3log/pipe

启动参数说明:

完整启动参数的说明可以使用 -h 来查看。

Docker 升级

  1. 拉取最新镜像
  2. 重启容器

可参考这里编写一个重启脚本,并通过 crontab 每日凌晨运行来实现自动更新。

NGINX 反代

upstream pipe {
    server localhost:5897;
}

server {
    listen 80;
    server_name pipe.b3log.org; # 配置为你自己的域名

    location / {
        proxy_pass http://pipe$request_uri;
        proxy_set_header  Host $host:$server_port;
        proxy_set_header  X-Real-IP  $remote_addr;
        client_max_body_size  10m;
    }
}

另外,可以参考 https://ld246.com/article/1517474627971 进行配置。

📜 文档

🏘️ 社区

📄 授权

Pipe 使用 木兰宽松许可证, 第2版 开源协议。

🙏 鸣谢


特性说明

发布文章

Pipe 的文章编辑器支持 Markdown,并支持复制/粘贴图片、粘贴 HTML 自动转换 Markdown、流程图、数学公式等。

另外,可以为文章启用自动配图,会自动在文章最前面插入所选择的配图。

聚合分类

Pipe 使用“自底向上”的分类方式:

  1. 定义分类,并配置该分类包含的标签
  2. 查询某个分类文章列表时通过分类-> 标签集-> 标签关联的文章进行聚合

也就是说一篇文章在编辑时只需要打标签,访问分类时会根据该分类包含的标签将文章关联出来。这是一个自底向上的信息架构,在使用时更灵活一些,可以随时调整分类而不必重新更新文章。

域名绑定

在 Pipe 平台上的每个博客都可以配置域名,需要博主和服务器运维者分别操作:

  1. 博主在设置 -> 基础配置 -> 博客地址一栏填写域名
  2. 运维者通过配置 NGINX 实现域名到 /blogs/{username} 的反向代理
server {
    listen 80;
    server_name vanessa.b3log.org;

    location / {
        proxy_pass http://pipe/blogs/Vanessa/;
    }
}

导入 / 导出

Pipe 支持导入 Hexo/Jekyll 的 Markdown 文件,将需要导入的 Markdown 文件使用 zip 压缩上传即可。导入时会按标题去重,并自动按原文章的创建时间生成存档。

同样地,Pipe 也支持 Markdown 导出,格式为 Hexo。

链滴

在 Pipe 上发布文章时可选择是否自动推送到链滴上,这样能让更多人看到你创作的内容,更容易引起大家的关注和互动。

运维

数据库

Pipe 使用 SQLite3 数据库引擎,数据文件默认情况下存放在 ~/pipe.db,可以通过修改 pipe.json 的 DataFilePath 指定新的存放路径。

建议定期备份数据文件,避免意外情况导致数据丢失。

版本升级

在管理后台的关于中可以检查版本更新,如果提示有更新请尽快升级,一般来说升级只需要下载新的发布包然后部署重启,实际升级方式以每次版本发布公告为准。

FAQ

如何做友链页面?

Pipe 没有单独的友链管理功能。可以通过发一篇文章,然后在导航管理中新建一个友链导航跳转过去。

结语