关键词:
目录
1 前言
最近想搭建一个博客,分享自己所学的知识。经过分析,选择了Hexo + Aliyun ECS来部署博客,刚开始选择Hexo+Github Pages的方式部署,但是由于访问页面速度很慢,用户体验不是很好,因此决定采用阿里云ECS来部署Hexo,访问速度更快。
2 环境介绍
物理机:MacBook
云服务器:Aliyun ECS/Centos 7.8 配置:1核 2GB内存 系统盘40GB
软件:Hexo、Node.js、Git
3 本地环境部署
3.1 安装node.js
Node.js直接在官网下载,安装即可,方便省事。
之后输入
node -v
和npm -v
检验是否安装成功,如果输出版本号则安装成功。
3.2 添加国内镜像源
可以使用阿里的国内镜像进行加速。
npm config set registry https://registry.npm.taobao.org
3.3 安装git
方式一:官网下载安装
git官网上下载安装即可
方式二:Homebrew安装git
brew install git
安装完成后在命令提示符中输入git --version
验证是否安装成功。
4 使用Hexo
4.1 安装Hexo
上面环境搭建好之后,在合适的地方新建一个目录作为你的博客文件夹,之后切换到该目录,输入以下命令:
npm install -g hexo-cli
可能会有一些警告Warn等,可以忽略。安装好Hexo之后,执行hexo -v
检验是否成功。
4.2 初始化Hexo
然后就要初始化我们的网站,输入hexo init
初始化文件夹,接着输入npm install
安装必备的组件。
这样本地的网站配置也弄好啦,输入hexo g
生成静态网页,然后输入hexo s
打开本地服务器,然后浏览器打开http://localhost:4000/,就可以看到我们的博客啦,效果如下:
4.3 下载主题Matery
方式一:git clone下载
git clone https://github.com/blinkfox/hexo-theme-matery.git
方式二:github直接下载
4.4 更换主题为Matery
修改博客根目录下的_config.yml
中的theme为matery
重新在项目根目录下进行本地部署调试
hexo s --debug
5 配置SSH密钥
为了使本地可以跟远程的github建立联系,需要在本地配置SSH密钥,这样我们就可以在本地直接提交代码到GitHub上或者远端git仓库。
如果你是第一次配置SSH,则配置一下git的username 和 email
$ git config --global user.name "你要设置的名字"
$ git config --global user.email "你要设置的邮箱"
之后生成SSH密钥:
$ ssh-keygen -t rsa -C "你刚刚设置的邮箱"
如果不需要设置密码的话,连续三个回车就好了。在这之后会得到两个文件: id_rsa 和 id_rsa.pub,找到id_rsa.pub文件,复制其内容。
6 服务器部署
6.1 git配置
1、安装git
yum install git
2、创建git账户
adduser git
3、添加git账户权限
chmod 740 /etc/sudoers
vim /etc/sudoers
输入上面的命令之后,进入编辑界面:
在root ALL=(ALL) ALL
下面添加
git ALL=(ALL) ALL
4、改回权限
chmod 400 /etc/sudoers
5、设置git账户密码
passwd git
6、切换至git用户,创建 ~/.ssh 文件夹和 ~/.ssh/authorized_keys 文件,并赋予相应的权限
su git
mkdir ~/.ssh
vim ~/.ssh/authorized_keys
按”i”进入编辑模式,将我们在MacBook中生成的id_rsa.pub文件中的公钥复制到authorized_keys中,按”esc”,然后按”:wq”,保存退出。
接着,输入一下命令,赋予权限
chmod 600 /home/git/.ssh/authorized_keys
chmod 700 /home/git/.ssh
在本地Git终端中测试是否能免密登录git,其中SERVER为填写自己的云主机IP,执行输入yes后输入你之前配置的git密码,无报错就说明好了。
打开终端,输入以下命令,其中SERVER填写自己的云主机ip,执行输入yes后不用密码说明配置成功了。
ssh -v git@SERVER
6.2 创建仓库目录及相关配置
1、创建目录
在var目录下创建repo作为Git仓库目录,返回服务端命令行切换到root账户,然后输入:
mkdir /var/repo
2、赋予权限:
chown -R git:git /var/repo
chmod -R 755 /var/repo
3、接下来创建hexo目录作为网站根目录,并赋予权限:
mkdir /var/hexo
chown -R git:git /var/hexo
chmod -R 755 /var/hexo
接下来创建一个空白的git仓库
cd /var/repo
git init --bare hexo.git
5、创建一个新的 Git 钩子,用于自动部署.
在 /var/repo/hexo.git 下,有一个自动生成的 hooks 文件夹。我们需要在里边新建一个新的钩子文件 post-receive。
vim /var/repo/hexo.git/hooks/post-receive
进入编辑模式,然后将下面那两行代码粘贴进去,保存退出。
#!/bin/bash
git --work-tree=/var/hexo --git-dir=/var/repo/hexo.git checkout -f
修改权限:
chown -R git:git /var/repo/hexo.git/hooks/post-receive
chmod +x /var/repo/hexo.git/hooks/post-receive
到这里Git仓库已经搭建完毕了。
7 配置Nginx
为了方便部署和维护,我们使用宝塔面板来一键部署Nginx
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh
中途输入”y”回车等待一会就好了。在执行结果最后会出现地址,用户名,密码等。
复制这个地址打开,输入账号密码即可进入宝塔面板。
注:这里也有可能你进不去面板页面,是因为你的服务器没有开8888这个端口(具体看你的宝塔面板连接的端口),去阿里云轻量服务器控制台中的“网络与安全”->“安全组”,点击配置规则——>手动添加
- 进入面板之后,会提示叫你修改端口,点击”立即修改”,可以看到”面板端口”这时候是8888,自己选一个值,然后先去服务器防火墙上开放这个端口,跟刚刚的”添加规则”操作一样。
- 再回到宝塔面板页面将”面板端口”的值修改成你刚刚开放的端口值。
- 然后需要用新端口,重新进入宝塔面板,就是将原有的链接”:”后面的值改成你的端口即可。
- 在左侧点击软件商店,输入Nginx,点击搜索,选择Nginx1.18.0安装即可
安装完成后,配置。
部署完成之后,点击网站,添加站点,填写你的域名,没有的话写你的服务器ip地址。其他的不要改。
填写完成后,点击提交,然后点击设置,选择配置文件
server
listen 80;
server_name xxxxxxx; # 修改为自己的域名或者ip
index index.php index.html index.htm default.php default.htm default.html;
root /var/hexo/; # 修改为网站目录
保存,然后选择“设置”-“网站目录”,将网站目录修改成以下,保存。
回到服务器终端,重启宝塔服务,使之生效。
service bt restart
8 修改Hexo配置
进入本地电脑hexo博客的根目录,编辑站点配置文件 _config.yml,找到deploy,修改成以下
deploy:
type: git
#repo改为repo: git@你的域名:/var/repo/hexo.git
repo: git@example.com:/var/repo/hexo.git
branch: master
最后在本地电脑hexo博客的根目录,打开终端,输入以下命令部署
hexo clean
hexo d -g
这时候可能出现权限问题,导致部署到git失败。
在服务器终端输入以下命令即可:
chown -R git:git /var/repo/
chown -R git:git /var/hexo/
最后再hexo d -g
部署,用域名访问即可看到部署成功了。
springboot部署到阿里云ecs服务器,阿里云ecs服务器安装jdkmysqlnginx详细步骤(代码片段)
1.购买阿里云ECS服务器官网:阿里云-上云就上阿里云根据自己的需要选择相应的配置:目前有一个月的服务器免费体验时间,我选择了免费体验,点击后,可以看到你刚才购买的服务器:也可以通过这里查... 查看详情
将hexo博客部署到云主机(代码片段)
...要:在云主机上搭建一个git裸仓库,然后使用nginx作为网页服务器,就可以轻松将Hexo博客通过git部署到云主机上。这是一个忧伤的故事我的博客KiwenLau之前部署在CodingPages上,挺不错的,还可以一键启用HTTPS。作为一个喜欢折腾的... 查看详情
python将hexo部署到阿里云osshttps://www.ficapy.com/2016/03/06/install_hexo_to_aliyun_oss/index.html(代码片段)
idea安装阿里cloudtoolkit插件(代码片段)
...及阿里云其他产品无缝集成,帮助您大大简化应用部署到服务器,尤其是阿里云服务器中的操作。您还可以通过其内嵌的Arthas程序诊断、TerminalShell终端和MySQL执行器等工具,简化应用开发、测试和诊断的过程。 传统部署方式... 查看详情
利用阿里云ecs部署自己的私有harbor镜像仓库(代码片段)
文章目录利用阿里云ECS部署自己的私有harbor镜像仓库harbor简介harbor的部署安装依赖安装docker安装docker-compose安装harborharbor的一些镜像浏览器访问向harbor推送nginx镜像利用阿里云ECS部署自己的私有harbor镜像仓库harbor简介虽然Docker官... 查看详情
利用阿里云ecs部署自己的私有harbor镜像仓库(代码片段)
文章目录利用阿里云ECS部署自己的私有harbor镜像仓库harbor简介harbor的部署安装依赖安装docker安装docker-compose安装harborharbor的一些镜像浏览器访问向harbor推送nginx镜像利用阿里云ECS部署自己的私有harbor镜像仓库harbor简介虽然Docker官... 查看详情
阿里云ecs数据迁移到阿里云oss(代码片段)
...去,该操作可通过ossutil落地实现。首先在你要迁移的服务器运行如下代码,安装该工具wgethttps://gosspublic.alicdn.com/ossutil/1.7.9/ossutil64当控制台输出如下内容,表示安装成功。[root 查看详情
部署java应用程序到阿里云ecs
...技术突飞猛进的发展,越来越多的开发者选择将应用程序部署到阿里云的ECS机器上,这里是一篇教程文章,介绍如何将本地开发的Java应用程序,部署到阿里云ECS。本地开发无论是编写云端运行的,还是编写本地运行的Java应用程... 查看详情
githubaction部署到阿里云ecs
参考技术AACCESS_TOKEN阿里云服务器要部署你本机的公钥/root/.ssh/authorized_keys,这里的私钥才能使用可以在阿里云服务器商添加密钥对,导入本机上的id_rsa_pub公钥,这个存放在.ssh/下面,然后重启实例之后,使用本机的id_rsa私钥配置... 查看详情
使用hexo搭建静态博客(代码片段)
...是Hexo?Hexo安装Hexo建站Hexo配置Hexo自定义主题Hexo写作Hexo服务器Hexo生成与发布一键部署Hexo站点到githubpagesGithub仓库准备安装hexo-deployer-git插件修改_config.yml配置部署站点一键部署到自己的云服务器配置Nginx反向代理新建git仓库,并... 查看详情
个人站点升级持续集成,自动构建和部署(代码片段)
...的时候,需要手动输入命令,build好文件,再用scp部署到服务器上。本文,用于记录解决这个痛点的过程。采取的解决方案就是持续集成。以下是我用于部署个人站点的服务器概况:服务器-阿里云ECS系统-CentOS7Git仓库管理工具-Git... 查看详情
如何将django项目部署到阿里云服务器上
参考技术A1,APP应用需要什么样的云服务器?为了帮助大家了解如何使用阿里云云服务器及相关应用,阿里云的移动云团队开发了一个简单的APP应用:移动云相册,其中使用了ECS主要用作部署云相册的API服务(图片信息调用、图... 查看详情
项目总结57:使用阿里云性能测试-电商系统并发测试(代码片段)
...件和软件上,测试环境和正式环境一致 2-目前一共4台服务器:一台阿里云SLB服务器,一台RDS数据库服务器,两台ECS服务器(tomcat、redis、kafka,mongodb君部署在ECS服务器) 3-测试环境(完全模拟真实环境): 数据库:在R... 查看详情
阿里云ecs云服务器基于docker安装zookeeper并且操作(代码片段)
介绍了阿里云ECS云服务器的Centos系统如何在docker环境下安装zookeeper并执行连接操作! 本文详细介绍了基于docker安装zookeeper的教程,至于如何安装docker,我们在此前的文章中已经介绍过了:阿里云ECS云服务... 查看详情
docker部署war包到阿里云(代码片段)
最近买了个阿里云服务器,配置1核2g内存,学习够了。记录下过程。1,服务器相关,请看下图,云服务器主要配置是安全组和密钥,前者是开放端口,后者可以用于远程连接(比如我windows系统通过putty远程连接linux主机)2,服... 查看详情
如何使用阿里云+hexo搭建个人静态博客
使用阿里云服务器部署php环境,然后就可以使用Hexo建立个人博客了。环境面板里面有一键部署wp的功能,点击几次鼠标就可以轻松建站,毫不费力。不过如果是新手还是需要熟悉下过程的,老魏为此写过阿里云服务器手动建站、... 查看详情
如何将app部署在阿里云服务器上?
参考技术A1。远程登录第一次购买ECS后,会把该ECS服务器的root账号、密码发送购买者的邮箱,然后购买者可以通过远程登录到ECS服务器。2。安装web环境根据自己应用特点选择安装相关web服务器tomcat或者jetty,阿里云提供了一条龙... 查看详情
如何将app部署在阿里云服务器上
1,APP应用需要什么样的云服务器?为了帮助大家了解如何使用阿里云云服务器及相关应用,阿里云的移动云团队开发了一个简单的APP应用:移动云相册,其中使用了ECS主要用作部署云相册的API服务(图片信息调用、图片列表调... 查看详情