使用Docker 搭建Ghost博客(Docker+Nginx+Ghost+Mysql)
技术点
- 阿里云服务器购买流程及搭建技术
- 国内域名备案
- Docker 以及Docker Compose 相关内容
- Nginx 负载均衡及配置SSL
- Https 相关内容
搭建步骤
- 购买阿里云服务器
- 购买域名
- 域名备案
- 编写docker-compose.yml编排文件
- 配置Https
- 定制化Ghost
- 完成
购买阿里云服务器
-
登录阿里云
-
打开云服务器ECS
-
创建实例
- 创建实例时注意服务器地域选择,国内服务器架设网站需要备案,香港及国外服务器不需要备案.
- 根据个人需求以及实际情况购买服务器规格.
-
购买成功后. 登录服务器.
域名购买
- 国内可以去万网购买.
- 域名备案
- 域名无论是在国内还是国外注册的,
只要接入服务器在国内,就需要备案,
如果接入服务器在国外,则不需要备案。
- 域名无论是在国内还是国外注册的,
域名备案
注意:
- 如果直接购买海外服务器,可以免去这一步.
- 备案需要14-20天左右才能完成.
- 具体备案请查看 阿里云备案
项目介绍
项目地址: docker-nginx-ghost-mysql
Docker-compose.yml文件中,定义了三个服务,分别是mysql
,nginx
,ghost
- 整体工程结构:
- 结构介绍
docker-compose.yml
是容器编排文件ghost
config
文件夹下,存放ghost配置文件content
文件夹下,存放ghost相关内容文件,例如image,theme,log等
mysql
data
文件夹下,是mysql数据存放的地方
nginx
log
是NGINX相关日志存放的地方ssl
是NGINX配置https使用的证书文件存放的相关地方config
存放NGINX配置文件
- 相关文件内容可查看github仓库
docker-nginx-ghost-mysql
使用
-
git clone https://github.com/1314cc/docker-nginx-ghost-mysql.git
-
在
docker-compose.yml
中配置mysql密码- 设置mysql密码
- 打开
docker-compose.yml
替换yourMysqlPassword
为你的mysql密码
- 打开
- 设置mysql密码
-
配置
ghost
- 修改ghost/config/config.json配置文件
- 打开
ghost/config/config.json
配置文件 - 修改第一行
url
对应值为你的网站的地址 - 修改"database" 中,
password
为第一步mysql设置的密码
- 打开
- 修改ghost/config/config.json配置文件
-
配置
NGINX
-
配置ssl所需秘钥.
- 阿里云可以申请一年免费的ssl证书.
- 在阿里云域名控制台中,打开域名的详细信息.
- 申请完成后,进行签发,然后下载秘钥证书
- 把下载后的证书,拷贝到nginx/ssl目录中
-
打开
nginx/config/conf.d/ghost.conf
-
修改第12行: server_name对应的域名为你的网站对应的域名(多个域名空格隔开,最后分号结尾)
-
修改18,19行: 指定ssl秘钥位置.
-
-
启动
cd project_root
进入项目根目录- 执行
docker-compose up -d
- 查看是否启动成功,
docker-compose ps
-
然后可以愉快的访问你的网站啦! 完成!
ghost定制
- 主题默认使用Casper主题.可以去主题市场发掘好看好玩的主体
- 题主使用的主题是ghost-theme-Moegi
good luck!!!
参考
文章链接: www.blackchen.site/docker-ghost
作者: BlackChen