Jekyll博客环境配置记录
最近给博客配置服务器,因为提交阿里备案好几天初审都没有响应,所以放弃了,转用阿里香港服务器,没有什么大的应用场景,所以用的最便宜的 1核 - 1G RAM 的配置。服务器主要用来跑我个人的博客,和一些说明文档的存放,基于 jekyll,需要安装 ruby3+的环境,中间遇到了坑,记录一下。
最近给博客配置服务器,因为提交阿里备案好几天初审都没有响应,所以放弃了,转用阿里香港服务器,没有什么大的应用场景,所以用的最便宜的 1核 - 1G RAM 的配置。
服务器主要用来跑我个人的博客,和一些说明文档的存放,基于 jekyll,需要安装 ruby3+的环境,中间遇到了坑,记录一下。
阿里ECS常用的系统有Ubuntu和CentOS,都记录一下:
1. Ubuntu安装Jekyll
1.1. 环境
- Ubuntu
22.04
LTS - 阿里 ECS HK
1.2. 安装 ruby
首先安装依赖
1
2
sudo apt update
sudo apt install git curl libssl-dev libreadline-dev zlib1g-dev autoconf bison build-essential libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-dev
然后使用 curl
命令安装 rbenv
下面的安装脚本官方一直在更新,安装步骤可能会有变化,可能会失效,具体查看 https://github.com/rbenv/rbenv
1
curl -fsSL https://github.com/rbenv/rbenv-installer/raw/HEAD/bin/rbenv-installer | bash
添加 ~/.rbenv/bin
到环境变量, 并生效环境变量
1
2
3
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
source ~/.bashrc
然后终端输入
1
type rbenv
如果输出如下,配置rbenv成功
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Output
rbenv is a function
rbenv ()
{
local command;
command="${1:-}";
if [ "$#" -gt 0 ]; then
shift;
fi;
case "$command" in
rehash | shell)
eval "$(rbenv "sh-$command" "$@")"
;;
*)
command rbenv "$command" "$@"
;;
esac
}
1.3. 使用 rbenv 安装 ruby
首先查看可用的 ruby 版本:
1
rbenv install -l
输出如下:
1
2
3
4
5
6
7
8
9
10
11
3.0.6
3.1.4
3.2.2
jruby-9.4.3.0
mruby-3.2.0
picoruby-3.0.0
truffleruby-23.0.0
truffleruby+graalvm-23.0.0
Only latest stable releases for each Ruby implementation are shown.
Use 'rbenv install --list-all / -L' to show all local versions.
我安装的是 3.2.2
1
rbenv install 3.2.2
然后,就开始下载 ruby 源码,并开始编译,耗时非常长,我用了半小时编译完,取决于你的电脑。
如果下载源码包比较缓慢,可以将下载地址拷贝出来,或者从
https://cache.ruby-china.com/pub/ruby/
找到相应版本,使用浏览器下载,然后上传到~/.rbenv/cache/
目录,重新执行安装命令,会从cache中找安装包
编译安装完,如果没有报错,设置ruby默认版本
1
rbenv global 3.2.2
查看一下 ruby 版本
1
ruby -v
输出:
1
ruby 3.2.2 (2023-03-30 revision e51014f9c0) [x86_64-linux]
如果要切换会系统自带的ruby,可以:
1
rbenv global system
1.4. 安装 jekyll
如果之前安装过 jekyll,需要使用原版本的ruby gem 卸载 jekyll, 切换到原版本 ruby,执行
gem uninstall jekyll
即可,然后再使用新版本的ruby gem 安装jekyll
ruby 版本对了,jekyll 安装就比较简单了,国内的话,主要取决于网络。 这里也记录一下,防止下回还去查资料. 也可以设置国内的 ruby gem 源,比如清华大学源:
Gem
1
2
3
4
5
# 添加镜像源并移除默认源
gem sources --add https://mirrors.tuna.tsinghua.edu.cn/rubygems/ --remove https://rubygems.org/
# 列出已有源
gem sources -l
# 应该只有镜像源一个
bundler
1
bundle config mirror.https://rubygems.org https://mirrors.tuna.tsinghua.edu.cn/rubygems
参考:清华 ruby gem
提示:可以使用
gem env
查看 ruby 和 gem 的一些系统环境变量
安装 bundler
,主要是 jekyll 运行一些插件和依赖的时候用
1
gem install bundler
安装 jekyll 4.3.2
1
gem install jekyll
安装完可以看下版本
1
jekyll -v #output jekyll 4.3.2
2. Typora + 图床
使用的又拍云免费存储,每月提供10G流量,之前用过七牛云,换用又拍云后感觉图片加载速度飞快。 使用 PicGo + Typora 组合,可以实现粘贴自动上传本地图片,并生成链接
PicGo配置:
Typora配置:
3. 啰嗦的话
到这里博客的配置就完了,选择香港 ECS 的原因就是无需备案(update-2024-12-由于香港访问不稳定,最后还是乖乖备案了,备案速度也挺快,没想象的麻烦)。然后全世界的网络任意访问,不会出现国内ruby 下载半天 timeout 的问题。
这种感觉很自由和舒服。
第二个想说的是,环境工具找自己熟悉的用,不要别人说什么什么好就一定要用,自己体验一下,除非有绝对的优缺点,否则不要更换,浪费时间。
好了要开始写博客去了,立一个目标,小站能活过 10 年。