前言
最近想薅下Google的羊毛,趁着阿里云快到期了,就将整个博客迁移到了Google Cloud Platform(GCP)上了。看下GCP的速度怎么样,300$美金的券儿还是挺有诱惑力。以前写过一篇tale如何进行升级?,本来想写下tale如何进行安装,这下就直接跳转到了tale如何进行迁移了......(有点尴尬)
文件备份
我这里采取的是整站备份,直接将tale进程停止,一条命令开始备份。
tar -cvzf /you/server/tale/dir bk_tale.tar.gz
这样整站备份下来肯定是最“原汁原味”,但是文件大小稍许可能有点大,我们可以将下图黄色圈中的log文件删除掉,这样就可以降低备份文件的大小。
除此之外就没有什么要备份的了......
迁移过程
解析域名
修改已有域名的解析,将A记录中的记录值ip换成在GCP中分配的固定ip。阿里云解析如下图所示:
因为不太喜欢www开头的域名格式,所以就直接解析根域名了。A记录的生效的时间很快,5分钟左右就好了。
运行tale
将备份下来的整站tale上传到新的服务器中,建议与原有服务器的目录路径保持一致,以防出现目录路径错乱的问题。如果你没有修改过tale的源码相关文件,就可以改变目录,理论上不会出现这个问题。
进入tale目录,使用命令启动:
cd /your/tale/dir
./tale-cli start
./tale-cli status #查看tale的运行状态
ps -e | grep java #看看java程序的运行状态
如果没有修改过tale的配置文件,那么tale理论上应该运行在“http://127.0.0.1:9000”。
安装nginx
“最好的老师就是文档”!
下面的链接是nginx的安装文档。
https://nginx.org/en/linux_packages.html#stable
总的来讲:
第一步,添加nginx签名文件。将从nginx网站下载下来的nginx_signing.key添加ubuntu key管理器中。
sudo apt-key add /your/server/dir/nginx_signing.key
第二步,将nginx添加到ubuntu源文件中。
sudo vim /etc/apt/sources.list
#vim edit add
deb http://nginx.org/packages/debian/ codename nginx
deb-src http://nginx.org/packages/debian/ codename nginx
下面是codename的对应关系:
Ubuntu:
Version Codename Supported Platforms
14.04 trusty x86_64, i386, aarch64/arm64
16.04 xenial x86_64, i386, ppc64el, aarch64/arm64
17.10 artful x86_64, i386
18.04 bionic x86_64
第三步,安装nginx。
sudo apt-get update
sudo apt-get install nginx
sudo dpkg -L nginx #查看nginx目录结构
nginx -v #版本
ps -e |grep nginx #查看nginx是否运行
sudo nginx #启动nginx
sudo nginx -s stop #停止nginx
第四步,修改配置文件
sudo vim /etc/nginx/conf.d/default.conf
#vim edit
修改server_name
#listen 80;
#server_name tuzhao.org;
#修改location
#location / {
# #root /data/www/root;
# #index index.html index.htm;
# proxy_pass http://127.0.0.1:9000;
#}
修改完成以后重启一下nginx。
安装https证书
我们这里使用的是https://letsencrypt.org/提供的免费证书。用它的主要原因是它是linux基金会创办的,这一条理由就够了。
它推荐我们使用Certbot快速集成,因为可以自动帮我们管理证书的配置和续期。
下面是Ubuntu 16.04的集成文档链接:
https://certbot.eff.org/lets-encrypt/ubuntuxenial-nginx
第一步,安装。
$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:certbot/certbot
$ sudo apt-get update
$ sudo apt-get install python-certbot-nginx
第二步,集成。
#会有几个问题,自己选择就好。
sudo certbot --nginx
这个会自动帮我们修改nginx中https证书配置(/etc/nginx/conf.d/default.conf)。我们可以看下配置文件的写法,因为其它CA的证书配置也是一样的。
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/tuzhao.org/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/tuzhao.org/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
if ($scheme != "https") {
return 301 https://$host$request_uri;
} # managed by Certbot
结尾
迁移成功!开始使用https进行访问~!
本文由 tuzhao 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为:
2018/09/16 15:48