Shalog 是一个基于 Golang 开源的轻量级内容管理系统,告别 PHP 类的繁琐的部署方式,超底的资源占用率,并且支持图床功能当然也可以使用七牛作为存储方式,支持 Docker 、k8s 部署。
支持内容自定义,支持模版自定义,支持图床功能,支持 Mweb,Metaweblog API 。
项目开源地址:https://github.com/icowan/shalog
开源地址: https://github.com/icowan/blog-view
使用 ReaceJS 作为管理后台的前端展示,如下图:
演示地址: https://shalog.nsini.com
演示管理后台地址: https://shalog.nsini.com/admin/
用户名: shalog
密码: admin
平台后端基于go-kit、前端基于 umijs 和 ant-design框架进行开发。
后端所使用到的依赖全部都在go.mod里,前端的依赖在package.json
,详情的请看yarn.lock
,感谢开源社区的贡献。
后端代码: https://github.com/icowan/shalog
前端代码: https://github.com/icowan/shalog-view
配置文件准备, app.cfg以下为参考:
[server] app_name = shalog app_key = R*9N*Q#ROFJI debug = false # 是否启用调试模式 log_level = error # warning error info debug logs_path = /var/log/shalog.log session_timeout = 14400 # 管理后台登录 token 失效时间 [mysql] host = mysql # 数据库地址 port = 3306 # 数据库端口 user = root password = admin database = shalog [cors] allow = false # 是否支持跨域 origin = http://localhost:8000 methods = GET,POST,OPTIONS,PUT,DELETE headers = Origin,Content-Type,Authorization,mode,cors,x-requested-with,Access-Control-Allow-Origin,Access-Control-Allow-Credentials
在您的电脑上安装 docker-compose 命令,请参考: https://docs.docker.com/compose/install/
创建 docker-compose.yaml
文件:
version: '3' services: mysql: image: mysql:5.7.29 environment: MYSQL_ROOT_PASSWORD: "admin" MYSQL_DATABASE: "shalog" command: [ '--character-set-server=utf8mb4', '--collation-server=utf8mb4_unicode_ci', ] expose: - "3306" ports: - "3306:3306" shalog: image: dudulu/shalog:latest command: /go/bin/shalog start -p :8080 -c /etc/shalog/app.cfg environment: GOPATH: "/go" USERNAME: "shalog" PASSWORD: "admin" SQL_PATH: ./database/db.sql volumes: - ./app.cfg:/etc/shalog/app.cfg depends_on: - mysql restart: always ports: - "8080:8080"
将上面准备好的 app.cfg 放到当前目录,然后执行以下命令:
$ docker-compose start
浏览器输入: http://localhost:8080
访问
修改 app.cfg
文件,将 mysql 地址配置为您自己的数据库地址。
克隆代码,及本地启动
$ git clone github.com/icowan/shalog.git $ cd shalog/ $ make run
浏览器输入: http://localhost:8080
访问
![]() | 1 misaka19000 2020-03-21 17:27:37 +08:00 为什么要轻喷? |
![]() | 2 misaka19000 2020-03-21 17:27:50 +08:00 感觉挺好的啊 |
![]() | 3 songjiaxin2008 2020-03-21 17:33:51 +08:00 不错 支持 |
![]() | 4 manami 2020-03-21 17:40:38 +08:00 挺好的 |
5 minglanyu 2020-03-21 17:41:49 +08:00 没钱,精神上支持(狗头 |
![]() | 6 sayakafs 2020-03-21 17:44:15 +08:00 via iPhone 写的很好,不过下一秒改改就是我的了[狗头] |
7 missdeer 2020-03-21 17:46:51 +08:00 下一秒改改就是我的了[狗头] |
![]() | 8 xfxly 2020-03-21 17:49:23 +08:00 下一秒改改就是我的了[狗头] |
9 donnior 2020-03-21 17:58:16 +08:00 楼主,演示站太慢了,进不去 |
![]() | 10 alpha2016 2020-03-21 18:01:03 +08:00 相当 NB 了 |
11 python30 2020-03-21 18:24:50 +08:00 不错啊。mark 一下。抽空看看 |
![]() | 12 ysz1121 OP 哈哈谢谢 |
![]() | 13 ysz1121 OP 后台会有点慢,加载的前端资源比较大 |
![]() | 14 ysz1121 OP 有空欢迎留下友链 |
15 hxroyal 2020-03-21 18:36:31 +08:00 via Android 一个人撸了多久?看似功能很全面啊 |
17 52coder 2020-03-22 00:22:04 +08:00 下一秒改改就是我的了[狗头] |
![]() | 18 hjsbs 2020-03-22 08:36:47 +08:00 告别 PHP 类的繁琐的部署方式??? 明明是你这个更繁琐 php 网站都不用部署的直接扔进云虚拟主机 |
19 darknoll 2020-03-22 08:53:57 +08:00 via Android 前端代码在哪呢 |
![]() | 20 ysz1121 OP |
![]() | 21 ysz1121 OP @hjsbs 嗯,这个可以直接 make run 或 docker-compose start 或者直接编译成二进制丢上去 环境都不需要 |
![]() | 22 hugee 2020-03-22 12:24:30 +08:00 我这种只会简单用 wp 的家伙投来崇拜的目光 |
23 iliul 2020-04-02 15:31:26 +08:00 手动点赞 |
![]() | 24 brzhang 2020-04-02 20:58:30 +08:00 via iPhone 下一秒就是我用 flutter 撸了一个,求轻喷 |