使用群晖 Docker 零代码搭建漂亮的博客 Typecho

2017-11-15 12:16:41 58点赞 485收藏 116评论

前言

今天排骨来教没搭过博客的同学们搭个简单好用又好看的博客.

什么是博客? 还有不知道博客的网民存在么? 博客就是网上写日记/文章什么的, 一般属于个人. 张大妈最初就是个普通的博客, 从发布3C好价爆料开始的.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

普通网民喜欢写点东西, 又懒得写很长, 所以微博这种东西就出来了.
想在大妈上发原创? 不如先从自己的博客开始写?

需要的材料

1. x86 CPU群晖DSM一台.

目前只有x86 CPU的群晖DSM (版本5.2以上) 才带 Docker 套件. 用 Web Station 安装可能需要手动改 nginx.conf, 比较麻烦.
群晖基本使用方法此文不作介绍.

2. 公网IP一个.

光猫/主路由需要给群晖博客端口做转发到公网IP上. 没有公网IP就得使用内网穿透方案.
端口转发与内网穿透本文不作介绍.

3. 博客系统文件zip一个.

排骨这里推荐使用一个国人制件的博客系统 Typecho. 安装文件下载链接 密码: 7w34

4. 域名一个.

如果有一级域名是最好, 没有的话用3322等免费二级域名也可以.
域名申请与设置本文不作介绍.

5. SSL证书一个

马化腾云或马云都提供免费的1年期SSL证书申请. 本文使用马化腾云提供的nginx版证书.
SSL证书申请方法本文不作介绍.

用 Docker 搭建 Typecho 运行环境

1. 博客文件放哪?

File Station选取或新建一个文件夹作为 Typecho 程序和数据的存放区. 例如下图

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

2. 解压缩

将之前下载的 typecho.zip 上传到存放 Typecho 的文件夹里. 右键点文件选择解压缩. 解压得到 www 文件夹后可以删除 typecho.zip

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

3. 安装 Docker

从群晖DSM的套件中心安装 Docker

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

4. 下载 nginx 镜像

打开 Docker, 在注册表中搜索 cuteribs 下载 nginx-php-sqlite 镜像

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

5. 创建容器

映像里选择刚刚下载的 nginx-php-sqlite 镜像, 点击启动.打开创建容器窗口, 再点击高级设置.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

6. 设置装载路径

高级设置中选择, 添加文件夹, 选择第1步的 typecho 文件夹, 然后把装载路径写成 /data.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

7. 设置端口

再选择端口设置, 为 Typecho 设置本地端口. 默认情况下 80/443 被 Photo Station 占用. 完成后点确定保存高级设置.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

8. Docker 容器完成

再点下一步核对一下设置, 点应用完成创建容器. 如果容器开始运行就表示搭建成功了.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

9. 镜像下载失败?

如果第4步下载镜像不成功, 可以按以下方法添加阿里云的镜像库, 然后选中新添加的存储库点使用. 再搜索 cuteribs 下载 nginx-php-sqlite 镜像.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

Typecho 安装配置

1. 第一次进入 Typecho.

按上面的步骤搭建完成后, 在浏览器中输入群晖的IP加端口号, 会自动进去安装页面 (install.php). 如下图:

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

2. 配置数据库与管理员账号

这里我们使用 sqlite 数据库基本是零配置, Typecho 自动为我们配置好了. 我们只需要设置一下管理员账号和密码就可以确认了.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

3. 安装成功!

看到这个页面表示我们已经完成了 Typecho 的安装. 你的博客系统已经跑起来了!

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

4. 可能遇到的问题

如果第2步确认后见到这个错误, 说明 Typecho 不够权限写入数据库文件. 我们需要手动设置一下 www 文件夹的权限.使用群晖 Docker 零代码搭建漂亮的博客 Typecho右键点击 www 文件夹, 选择属性, 然后是权限, 再选中 Everyone 后点编辑, 照下图设置 Everyone 的权限.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

如果用户或组是灰色不可选, 那就在高级选项使继承权限显式化.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

完成后数据库配置应该就能继续下去了.

开始使用 Typecho 吧

1. 再次进入 Typecho 首页

这次不会再强制转到 install.php 安装页面了. 你会看到如下图这样超级简易的博客首页.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

2. 登录进入后台

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

3. 使用后台管理

进入后台首先会看到网站概要. 我们将按下图 1 2 3 4 顺序走一遍.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

4. 基本的设置

在顶菜单选择 设置->基本, 修改一下站点名称和站点描述. 引号实际上不可以使用......

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

5. 我是外观党

在顶部菜单选择 控制台->外观, 会看到 Typecho 自带的 Typecho Replica Theme 和排骨喜欢的 Pinghsu Theme (将来肯定又是一个晒妻党). 启用 Pinghsu 吧.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

启用后再点设置外观, 排骨建议启用下图的这些选项.
使用群晖 Docker 零代码搭建漂亮的博客 Typecho6. 更直观的编辑器插件

排骨给大家准备了一个叫 EditorMD 的编辑器插件, 可以边写文章边预览效果. 需要从 控制台->插件 这里启用一下.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

7. 第一篇博文

Typecho 使用 Markdown 语法, 这是一个很简易又很强大的格式化语法, 你可以像写标点符号一样的给你的文字添加格式. 总之是非常屌的东西自己百度吧. 发布文章后看看效果如何?

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

文章最终显示的效果是由 Typecho 的外观 (主题模板) 控制的. https://typecho.me/ 上有很多其它的主题下载哦.

加上域名与SSL证书

1. 添加域名

在域名解析记录里添加一条A记录指向你家的IP. 排骨这次添加的 typecho.cuteribs.tk, IP 是 218.83.26.15. (你看到的时候肯定已经变了) 然后访问 http://typecho.cuteribs.tk:22080/ 看看能不能打开博客?

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

2. 准备证书

在qcloud为域名 typecho.cuteribs.tk 申请一个SSL证书. 审核完成后下载证书包, 我们需要用到包中的 nginx 文件夹里的两个文件.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

3. 放置证书文件

在 typecho 文件夹下面新建一个 crt 文件夹, 将两个证书文件(证书与私钥)分别改名为 site.crt 和 site.key, 然后上传到 crt 文件夹.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho使用群晖 Docker 零代码搭建漂亮的博客 Typecho

4. 修改站点地址

将 Typecho 后台基本设置里的站点地址改为 https://typecho.cuteribs.tk:22443

使用群晖 Docker 零代码搭建漂亮的博客 Typecho


5. 重启 Docker 容器

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

6. 完成

访问 https://typecho.cuteribs.tk:22443, 开始你的安全博客之旅吧.

使用群晖 Docker 零代码搭建漂亮的博客 Typecho

总结

希望看过本文的同学都能在自己的群晖上搭起博客来, 可能后面的域名与SSL部分会难到不少人. 因为域名与SSL部分不是重点, 而且一下子也讲不清楚.

本文的博客搭建方法同样适用于VPS上, 但是那样就不能零代码了, 需要linux基础了.

本文不作介绍的内容以后排骨会专门写贴来教大家如何申请免费的一级和二级域名, 如何设置免费的动态域名更新, 如何申请免费的SSL证书. 全部都免费不要钱, 顶多cost你一点金币银子啥的.

就先到这里吧.


支持 Docker 的群晖新产品:

百科群晖(Synology)DS918+ 四盘位 NAS网络存储服务器 (无内置硬盘)DS918+属于群晖的PLUS系列产品,即高端型号,而且基于x86架构CPU,原生支持Docker等容器虚拟化技术。采用英特尔赛扬J3455 CPU,四核四线程设计,支持2路4K@30fps转码。预装4GB DDR3L内存,另预留一个内存插槽,可以扩展到8GB。4个盘位,可以通过群晖的扩展设备扩展至 1 点评0 原创1 好价4去购买查看详情群晖(Synology)DS718+ 2盘位 NAS网络存储服务器 (无内置硬盘)3680元京东去购买群晖(Synology)DS218+ 2盘位 NAS网络存储服务器 (无内置硬盘)2880元京东去购买


展开 收起
116评论

  • 精彩
  • 最新
  • 这个docker现在好像用不了了?日志里面提示php-fpm5: not found

    校验提示文案

    提交
    现在换成php7了

    校验提示文案

    提交
    那是需要用php7版本的typecho吗?

    校验提示文案

    提交
    还有9条回复
    收起所有回复
  • 站点打不开啊 [捂嘴]

    校验提示文案

    提交
    哪个站点? 文中那个域名么? 写完文章就销掉了. 要看样例可以访问 blog.cuteribs.tk

    校验提示文案

    提交
    收起所有回复
  • 博客挂掉了?其实我想问个问题,你这个应该是用域名在群晖做DDNS吧?如果这样的话那不是会暴露出自己的IP地址,目测也对外开放了群晖的端口,所以万一被人攻击怎么破?(虽然个人网站被攻击概率极小),有什么防范的措施吗?

    校验提示文案

    提交
    有什么好防的? 你有什么好担心的? 你家NAS上存的是国家宝藏么? [邪恶]

    校验提示文案

    提交
    收起所有回复
  • 看完才发觉,原来是群辉广告贴 [赞一个]

    校验提示文案

    提交
    不是广告贴, 绝对不是, 我都没中418干嘛要给人家打广告~~ [小怒]

    校验提示文案

    提交
    收起所有回复
  • 不知DS216play,支持不?

    校验提示文案

    提交
    没有 Docker, 你可以装个web station, 再ssh进去手动运行nginx. 绝对不是零代码了.

    校验提示文案

    提交
    收起所有回复
  • 能不能请问下dsm端口转发和wol的问题?

    校验提示文案

    提交
    什么问题呢?

    校验提示文案

    提交
    一. 在主路由(可能是光猫)上设置群晖的IP:80端口 (TCP) 转发到外网8181上. 一次就行了
    二. WOL是靠一种UDP数据包实现的, 你想从外网WOL也需要在主路由做端口转发 (UDP)端口随意. 关机时间长可能需要arp绑定. 很多人用群晖的来电开机功能+WiFi插座达到唤醒目的.

    校验提示文案

    提交
    还有19条回复
    收起所有回复
  • 换了界面后不知道哪里登陆了

    校验提示文案

    提交
    首页地址后面加 /admin

    校验提示文案

    提交
    没有用。。。

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 连做博客都要用docker了 给web开发一点活路好吧 [内伤]

    校验提示文案

    提交
    docker和web开发不沾边吧? [晕死]

    校验提示文案

    提交
    收起所有回复
  • 知我者谓我心忧

    校验提示文案

    提交
    这.....这......什么情况?

    校验提示文案

    提交
    收起所有回复
  • 排骨大人教我们用bootstrap搭建东南亚网站吧

    校验提示文案

    提交
    东南亚是什么梗?? [狂汗]

    校验提示文案

    提交
    哈哈哈,你懂的。

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 为啥我阿里签下了的证书是 .pem 和 key的 这个能用不?

    校验提示文案

    提交
    证书格式是可以相互转换的.

    校验提示文案

    提交
    收起所有回复
  • 麻烦请教一下,请问我装完之后编写新文章是无法插入图片?编辑的页面也没有markdown插件启用

    校验提示文案

    提交
    默认就是支持markdown的, 不需要另装插件. 图片插入会在markdown会放在最下面, 文章里只放序号. 图片管理在编辑页右侧

    校验提示文案

    提交
    我的界面就是没有markdown的各种选项,右侧附件点击选择图片上传也没有反应

    校验提示文案

    提交
    收起所有回复
  • 把/data弄成了/date,然后找了半天File not found的原因 [损失几个亿]

    校验提示文案

    提交
    [傻笑] 常见犯二而已

    校验提示文案

    提交
    收起所有回复
  • 排骨能不能再写一个docker安装wordpress教程啊?

    校验提示文案

    提交
    下载个现成的镜像用吧.

    校验提示文案

    提交
    收起所有回复
  • 点击确认安装之后显示
    Warning: Cannot modify header information - headers already sent by (output started at /data/去看看:205) in /data/www/var/Typecho/Cookie.php on line 102

    Warning: Cannot modify header information - headers already sent by (output started at /data/去看看:205) in /data/去看看 on line 584

    还有我有现成的网站和数据库备份,如何还原呢?这里没有PHPadmin啊。数据库帐号密码也没有。

    校验提示文案

    提交
    我的镜像用的SQLITE.

    校验提示文案

    提交
    收起所有回复
  • 排骨大神,我按照教程已经配置好了docker的端口映射,现在内网可以访问博客。外网的域名解析也可以成功解析到公网ip。但是在外网通过22443和22080端口都访问不了博客,是什么原因?

    校验提示文案

    提交
    路由器上也要帮端口映射

    校验提示文案

    提交
    好的,谢谢。已经设置成功了!

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 楼主一定没看过查宁图塔姆的电影

    校验提示文案

    提交
    什么梗? 查宁图塔姆看过, 脸熟

    校验提示文案

    提交
    2013年,惊天危机里面,查宁的女儿就说了:“谁现在还用博客(blog) ?”

    校验提示文案

    提交
    还有8条回复
    收起所有回复
  • 如何http跳转到https呢?

    校验提示文案

    提交
    在nginx.conf里加一行 转向配置

    校验提示文案

    提交
    能否具体点

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 作者能否抽个空把docker上面的nginx-php-sqlite镜像更新一下,新版的typecho支持php7.0

    校验提示文案

    提交
    去年就更新到7.0了... ***

    校验提示文案

    提交
    收起所有回复
  • 跟wordpress比有什么优势?

    校验提示文案

    提交
    更轻量化。。。

    校验提示文案

    提交
    收起所有回复
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
485
扫一下,分享更方便,购买更轻松