「速记」一组命令,快速在另一个Linux系统上,初始化 jekyll 的本地博客预览环境
要解决的问题
jekyll 博客的本地git仓库,准备放到另一个Linux系统里。本地预览博客内容,需要适当配置下。
方法
我原来初始设置时,在当前仓库的 README.md 里记录了当时自己整理的一组命令,还挺好使。分享出来,也方便自己以后备查。为什么放到这个仓库自身的 README.md 里,而不是在某个文档仓库,统一管理?每个人习惯不一样吧。我喜欢把东西记录在更可能需要使用这个信息的地方。每次,凭直觉,去最可能存在的地方,去找答案;不再对应位置的化,会冗余一份放到我预期的位置。
注意: 以下操作,请在博客根目录执行。
- 初始设置,安装必要的库:
sudo apt-get install ruby-full build-essential zlib1g-dev
- 修改 shell 配置。我用的是 zsh,所以需要修改 .zshrc。
echo '# Install Ruby Gems to ~/gems' >> ~/.zshrc echo 'export GEM_HOME="$HOME/gems"' >> ~/.zshrc echo 'export PATH="$HOME/gems/bin:$PATH"' >> ~/.zshrc source ~/.zshrc
- gem安装更多依赖:
gem install jekyll bundler
# 新电脑上, 可能还需要安装部分ruby依赖:
bundle install
# 如果报错,可能需要先执行下:(可选)
bundle add webrick
- 本地预览:
bundle exec jekyll serve --host=0.0.0.0
- 再补充一个批量转换为 webp 图片的工具脚本:
sudo apt-get install webp
# 切换到对应目录
cd ./assets/images
# 仅转换.
find . -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" \) -exec bash -c 'cwebp -quiet "$0" -o "${0%.*}.webp";' {} \;
# 转换,并删除原图片.(慎用)
find . -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" \) -exec bash -c 'cwebp -quiet "$0" -o "${0%.*}.webp";' {} \; -delete