BlackChen'site

使用Docker 搭建Ghost博客(Docker+Nginx+Ghost+Mysql)

使用Docker 搭建Ghost博客(Docker+Nginx+Ghost+Mysql)

img

技术点

  • 阿里云服务器购买流程及搭建技术
  • 国内域名备案
  • Docker 以及Docker Compose 相关内容
  • Nginx 负载均衡及配置SSL
  • Https 相关内容

搭建步骤

  1. 购买阿里云服务器
  2. 购买域名
  3. 域名备案
  4. 编写docker-compose.yml编排文件
  5. 配置Https
  6. 定制化Ghost
  7. 完成

购买阿里云服务器

  1. 登录阿里云

  2. 打开云服务器ECS

  3. 创建实例

    • 创建实例时注意服务器地域选择,国内服务器架设网站需要备案,香港及国外服务器不需要备案.
    • 根据个人需求以及实际情况购买服务器规格.
  4. 购买成功后. 登录服务器.

    阿里云ECS文档

    ECS购买须知

域名购买

  1. 国内可以去万网购买.
  2. 域名备案
    • 域名无论是在国内还是国外注册的,
      只要接入服务器在国内,就需要备案,
      如果接入服务器在国外,则不需要备案。

域名备案

注意:

  • 如果直接购买海外服务器,可以免去这一步.
  • 备案需要14-20天左右才能完成.
  • 具体备案请查看 阿里云备案

项目介绍

项目地址: docker-nginx-ghost-mysql
Docker-compose.yml文件中,定义了三个服务,分别是mysql,nginx,ghost

  1. 整体工程结构:
    目录结构
  2. 结构介绍
    • docker-compose.yml是容器编排文件
    • ghost
      • config文件夹下,存放ghost配置文件
      • content文件夹下,存放ghost相关内容文件,例如image,theme,log等
    • mysql
      • data文件夹下,是mysql数据存放的地方
    • nginx
      • log是NGINX相关日志存放的地方
      • ssl是NGINX配置https使用的证书文件存放的相关地方
      • config 存放NGINX配置文件
  3. 相关文件内容可查看github仓库
    docker-nginx-ghost-mysql

使用

  1. git clone https://github.com/1314cc/docker-nginx-ghost-mysql.git

  2. docker-compose.yml中配置mysql密码

    • 设置mysql密码
      • 打开docker-compose.yml替换yourMysqlPassword 为你的mysql密码
  3. 配置ghost

    • 修改ghost/config/config.json配置文件
      • 打开ghost/config/config.json配置文件
      • 修改第一行url对应值为你的网站的地址
      • 修改"database" 中,password 为第一步mysql设置的密码
  4. 配置NGINX

    • 配置ssl所需秘钥.

      • 阿里云可以申请一年免费的ssl证书.
      • 在阿里云域名控制台中,打开域名的详细信息.
        免费开启ssl
        免费ssl
      • 申请完成后,进行签发,然后下载秘钥证书
        下载证书
      • 把下载后的证书,拷贝到nginx/ssl目录中
        拷贝证书到指定目录
    • 打开nginx/config/conf.d/ghost.conf

    • 修改第12行: server_name对应的域名为你的网站对应的域名(多个域名空格隔开,最后分号结尾)
      1552884450440

    • 修改18,19行: 指定ssl秘钥位置.
      修改ssl证书文件

  5. 启动

    1. cd project_root 进入项目根目录
    2. 执行 docker-compose up -d
      docker-compose up -d
    3. 查看是否启动成功,docker-compose ps
      docker-compose ps
  6. 然后可以愉快的访问你的网站啦! 完成!

ghost定制

  1. 主题默认使用Casper主题.可以去主题市场发掘好看好玩的主体
  2. 题主使用的主题是ghost-theme-Moegi

good luck!!!

参考

ghost官网
Docker
Https单向认证和双向认证


文章链接: www.blackchen.site/docker-ghost
作者: BlackChen

评论