Docker部署hexo
前期准备工作
准备一台Linux操作系统的服务器(本文以Debian为例)
更新软件包并安装curl和nano文本编辑器
1 | apt-get update && apt install curl nano |
开启ssh软件登录
手动开启root登录ssh
1 | nano /etc/ssh/sshd_config |
- 找到
PermitRootLogin prohibit-password
修改为PermitRootLogin yes
- 找到
PasswordAuthentication no
修改为PasswordAuthentication yes
(别忘了去掉前面的#号,使其生效) - 如果 root 账户还没有密码,可以通过以下命令为 root 账户设置密码:
1 | sudo passwd root |
- 为了使更改生效,需要重新启动 SSH 服务:
1 | systemctl restart ssh |
一键开启root登录ssh
1 | wget -q root.sh https://raw.githubusercontent.com/passeway/root/main/root.sh && chmod +x root.sh && ./root.sh |
安装docker
一键安装脚本
1 | curl -fsSL https://get.docker.com | bash -s docker |
官方自带docker compose命令,我后面还是单独安装了docker-compose使用,习惯了
你如果没有安装docker-compose,可以直接使用自带的docker compose,
后面执行bash命令时注意是
docker compose而不是
docker-compose. 执行命令时候也没有这个-杠
可在此命令后附带--mirror
参数设置镜像源,以提高国内服务器下载docker的速度
如使用阿里云镜像:
1 | curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun |
部署hexo
安装hexo
- 创建本地hexo容器目录
1 | mkdir -p /root/data/docker/hexo && cd /root/data/docker/hexo |
- 创建hexo的docker-compose.yml
1 | nano docker-compose.yml |
- 复制以下内容填写进去
1 | version: '3.0' |
按 Ctrl + X
确认保存,按 Enter
退出 nano。
4.启动容器
up 是启动容器, -d 表示后台启动
1 | docker-compose up -d |
浏览器打开http://你的服务器ip或域名:8889 8889是你之前docker-compose.yml中设置的端口
安装keep主题
XPoet/hexo-theme-keep: :rainbow:一款简单轻快的 Hexo 主题。它能让你更专注于写作。(github.com)
1 | #进入blog目录并拉取主题到themes/目录下 |
使主题生效
- 进入hexo容器内部
1 | docker exec -it hexo bash |
- 安装插件
1 | npm install |
- 重启docker
1 | docker-compose restart hexo |
浏览器打开http://你的服务器ip或域名:8889预览新主题
8889是你之前docker-compose.yml中设置的端口
修改主题配置文件_config.keep.yml
修改hexo配置文件
_config.yml