Ghost 博客迁移至阿里云 Docker
刚刚,将 Ghost 博客迁移到了阿里云 Docker 上。
由于近期网络问题,导致家里的 NAS 已经无法提供 443 端口的服务了,之前的临时解决方案是将 hadb.me 的域名解析到 DigitalOcean 的一台机器上,然后用 nginx 转发到 NAS 的 20443 端口,通过海外的服务器做了中转,访问速度可想而知。并且近期海外网络极不稳定,最终决定还是老老实实备案,迁移到阿里云上来。
近年来,Docker 容器化越来越火,我最近的几个项目也都是通过 Docker 来部署的,非常方便。
域名备案经历了几波周折,提交备案后,阿里云初检未通过,有如下问题:
- 根据要求已经取得备案号的网站最下方必须显示您的备案号,并能链接到工信部网站www.miitbeian.gov.cn,目前您网站“monkeyrun.net”最下方备案号无法链接工信部网站,请您修改
- 根据要求网站名称必须与主办单位名称有一定的关联性。您备案的网站名称“HADB 的博客”与主办单位名称“上海猿奋网络科技有限公司”没有关联性,请修改
- 根据要求域名持有者必须与主办单位名称一致,经查询您的域名“hadb.me”持有者与您备案信息中“邓斌 ”单位名称/法人姓名不一致,请您先办理域名过户
- 根据管局要求域名有效期需要大于 6 个月,您的域名“hadb.me”有效期不足 6 个月,请您修改
- “邓斌”证件号码在多个单位/个人备案中重复出现多次,根据要求,一个证件号码只能出现在一个单位/个人备案下,请您更换其它证件
问题 1、2 改起来都还好,很快改完了。
问题 3 操作的过程中遇到了一个很蛋疼的问题。域名原先在 Godaddy 上购买的,在过户前,手贱把域名里的持有者信息修改了下,从英文名改成了中文品拼音,然后就尴尬了,Godaddy 禁止域名转出了,锁定期貌似 60 天,后来给 Godaddy 打中文客服,一个妹子客服跟我说可以给[email protected]发邮件申请解锁,发了邮件一天没回复。又打电话过去,这次是个男客服接的,他跟我说,这个锁定期是没办法解锁的,巴拉巴拉,口径竟然不一样。后来 Godaddy 的 review60 团队回复我邮件了,说已经解锁了 60 天的锁定期。如果有遇到同样问题的朋友,可以尝试给 review60 团队发邮件就可以解锁了。但是在万网进行域名过户的时候,一直提示“该域名产品暂时不允许转入,无法进行转入操作”,查了下,万网目前不支持.me 域名的新注册和转入。后来就尝试了下直接提交,没有做过户操作,也通过了初审。阿里云这里要求的过户其实是非必要的,只需要把持有者信息修改就可以了。
问题 4 续费了下就可以了。
问题 5,也费了些功夫。几年前上大学时,一个外包项目中用的我自己的身份证作为网站负责人备案的。之前一直没有要求说一个证件号码只能出现在一个备案下,不过既然现在提示了这个问题,那就去处理下。由于这个外包项目已经停止了,并且甲方的网站也已经不做了。所以处理起来很简单,直接登录原备案账号,把备案号注销掉就可以了。
几经周折,备案号终于下来了,接下来开始处理部署的问题。
在阿里云上部署与在自己的机器上部署 Docker 有些区别。
具体流程如下:
- 购买阿里云文件存储 NAS 服务,用来存放 Docker 数据卷
- 在 ECS 上挂在 NAS,将以前的博客数据复制到 NAS 中的
/ghost-hadb-data
目录下 - 容器服务中创建 NAS 类型的数据卷
ghost-hadb-data
,指向/ghost-hadb-data
目录 - 创建应用,简单路由配置,将
hadb.me
指向容器端口2368
,选择刚刚创建的数据卷,容器路径为/var/lib/ghost/content
,在环境变量中配置 url 为https://hadb.me/
- 配置负载均衡,添加 https 协议 443 端口监听,导入证书
- 将域名解析切换到负载均衡 ip 地址
Done!以后可以愉快的写博客啦!