Ghost博客超级简单的安装搭建教程
Ghost是一个基于NodeJs完全开源的,用于构建和运行现代出版物的强大平台。本文记录了Ghost博客在本地快速安装和用docker在生产环境安装的步骤。
Ghost博客介绍:
Ghost是一个基于NodeJs完全开源的,用于构建和运行现代出版物的强大平台,平台支持博客、杂志、新闻等发布。它由前WordPress UI部门主管 John O’Nolan和WordPress 高级工程师(女) Hannah Wolfe 创立,目的是为了给用户提供一种更加纯粹的内容写作与发布平台,使命是为世界各地的独立记者和作家创建最好的开源工具。Ghost成立于2013年4月,在2013年9月份Ghost正式向公众发布。现在已经更新了多个版本,各方面也逐渐完善起来了,到目前(201901)Ghost已更新到了2.9版本,超过百万用户。
Ghost博客到底怎么样:
介绍完Ghost博客,那Ghost博客到底怎么样呢?我结合自己体验说说优点。
优点:
- 与Wordpress相比,更加简洁、易用、高效、优雅。
- 专注写作,支持在线预览,完美支持MarkDown。
- 开放的REST风格API。
另外放一张官方对比图,可以参考下。
最后说一下在选择博客方面,Ghost功能上不一定能完全满足你的需求,建议确定自己的需求与Ghost创建的目的和初衷是否一致,然后做出取舍与选择。
Ghost博客下载、本地快速安装:
首先Ghost是基于NodeJs的,所以需要NodeJs环境,没有安装的需要去自己安装(NodeJs安装)。还有安装了NodeJs版本过低需要升级。NodeJs版本推荐长期维护支持的稳定版。准备好了就开始安装了:
- 安装Ghost的脚手架工具
npm install ghost-cli -g
- 使用Ghost脚手架安装系统到本地
ghost install local
- 安装完成
安装完成后,您将能够访问新站点http://localhost:2368,用http://localhost:2368/ghost访问Ghost后台。
你还可以使用ghost命令完成以下指令:
- ghost stop 停止Ghost
- ghost start 启动Ghost
- ghost log 查看日志
- ghost ls 列出所有正在运行的Ghost博客
注:Ghost安装本地是为了二次开发,比如主题修改、汉化等等,如果没有需要可以省略此步骤。
生产环境安装:
环境准备
- 阿里云服务器或其它云服务器,域名一个,注意国内服务器需要备案。
- 服务器安装docker。CentOS Docker 安装、Ubuntu Docker 安装
- 服务器安装nginx,如果服务器只打算运行一个ghost可以不安装。Nginx 安装配置
安装步骤
- 下载ghost镜像
docker search ghost
docker pull ghost
docker images ghost
- 运行ghost镜像,注意根据需要按需修改
docker run -d --name istock-ghost -p 2368:2368 -v ~/blog:/var/lib/ghost/content -e url=http://share.istock.red -e mail__transport=SMTP -e mail__options__host=smtpdm.aliyun.com -e mail__options__port=465 -e mail__options__auth__user=share@xxx.red -e mail__options__auth__pass=xxxxxxx -e mail__options__secureConnection=true -e mail__from=share@xxx.red ghost
--name: 为容器指定一个名称,可以自定义。
-p: 端口映射,格式为:主机端口:容器端口,不通过nginx做代理的话可以直接映射到80端口(80:2368)。
-v:主机的文件夹~/blog映射到容器的/var/lib/ghost/content。如果使用默认主题就不需要映射文件夹了,主题定制、汉化等就需要映射(映射修改好的ghost系统content文件夹即可)。
-e:设置环境变量,可以设置搭建好的系统访问地址(url=http://share.istock.red)。后面-e mail相关的命令是配置邮件推送方面的参数,用的是阿里云邮件推送,为了解决阿里云服务器安装了不能发邮件的问题。如果遇到类似问题,可以参考上面命令的相关配置修改即可。
关于其它,可以参考文档docker ghost、ghost config。 - 检查是否安装成功
docker ps
docker运行成功如图示:
没用nginx直接端口映射到80,把域名解析到该服务器ip就可以了。用nginx就需要配置一下,转发到docker运行时指定的映射端口即可。
用docker安装搭建ghost就这么简单,只需要两步,下载ghost镜像,让它跑起来。
文章来自:天玑博客