pipe

command module
v1.8.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 26, 2019 License: GPL-3.0 Imports: 19 Imported by: 0

README

Pipe

小而美的博客平台,为未来而构建

简介

Pipe 是一款小而美的开源博客平台,专为程序员设计。Pipe 有着非常活跃的社区,文章自动推送到社区后可以让很多人看到,产生丰富的交流互动。

案例

功能

  • 多用户博客平台
  • Markdown / Emoji
  • 聚合分类 / 标签
  • 自定义导航
  • 多主题 / 多语言
  • Atom / RSS / Sitemap
  • 文章搜索
  • Hexo/Jekyll 导入 / 导出
  • 可配置动静分离
  • 支持 SQLite / MySQL

界面

开始使用

start

管理后台

console-index

编辑文章

article

主题选择

theme

主题 Gina

index

安装

本地试用

  • 下载最新的发布包解压,进入解压目录运行 pipe/pipe.exe
  • 从源码构建可参考这里

请注意:我们不建议通过发布包或者源码构建部署,因为这样的部署方式在将来有新版本发布时升级会比较麻烦。 这两种方式请仅用于本地试用,线上生产环境建议通过 Docker 部署。

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 来查看。

Docker 升级

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

可参考这里编写一个重启脚本,并通过 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 缓存库

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Package cache includes caches.
Package cache includes caches.
Package controller is the "controller" layer.
Package controller is the "controller" layer.
console
Package console defines console controllers.
Package console defines console controllers.
Package cron includes all cron tasks.
Package cron includes all cron tasks.
Package i18n includes internationalization related manipulations.
Package i18n includes internationalization related manipulations.
Package log includes logging related manipulations.
Package log includes logging related manipulations.
Package model is the "model" layer which defines entity structures with ORM and controller.
Package model is the "model" layer which defines entity structures with ORM and controller.
Package service is the "business logic" layer, encapsulates transaction.
Package service is the "business logic" layer, encapsulates transaction.
Package theme includes theme related manipulations.
Package theme includes theme related manipulations.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL