# 在官网下载 mac 版本 并安装

在使用 Hexo 构建个人博客时,我们可以通过 Docker 来简化整个部署过程,提高工作效率。下面是使用 Docker 在 macOS 上部署 Hexo 博客的步骤:

# 安装 Docker Desktop for Mac

  1. 从 Docker 官网下载 Docker Desktop for Mac 安装程序,下载地址:https://docs.docker.com/desktop/install/mac-install
  2. 双击 .dmg 文件开始安装过程。
  3. 当提示时,将 Docker 图标拖到应用程序文件夹中。
  4. 双击应用程序文件夹中的 Docker 图标启动 Docker Desktop。

在安装过程中,Docker Desktop 可能会要求您授予某些系统权限,如网络、文件系统和虚拟化等访问权限。请务必按照提示进行授权,以确保 Docker Desktop 能够正常运行。

# 配置环境变量

安装完成后,我们需要将 Docker 的 bin 目录添加到系统的环境变量中。通常情况下,Docker 的 bin 目录位于 /Applications/Docker.app/Contents/Resources/bin。 打开终端,编辑 .zshrc 文件 (如果你使用的是 zsh shells):

h
vi ~/.zshrc

然后添加以下行:

h
export PATH="/Applications/Docker.app/Contents/Resources/bin:$PATH"

保存并关闭文件,然后运行以下命令使更改生效:

source ~/.zshrc

# 配置 Docker 镜像加速器

为了加快镜像的拉取速度,我们可以配置国内的镜像加速器。你可以使用阿里云、网易云或百度云提供的加速器地址。 在 Docker Desktop 的设置中,找到 "Docker Engine" 选项卡,在 "registry-mirrors" 字段中添加你选择的加速器地址,例如:

e
{
  "builder": {
    "gc": {
      "defaultKeepStorage": "20GB",
      "enabled": true
    }
  },
  "experimental": false,
  "features": {
    "buildkit": true
  },
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
}

阿里云加速器 (点击管理控制台 -> 登录账号 (淘宝账号) -> 左侧镜像工具 -> 镜像加速器 )

# 创建 Dockerfile 文件

运行指令 hexo d 生成 public 文件夹
在你的 Hexo 项目根目录下,创建一个名为 Dockerfile 的文件,并添加以下内容:

h
# 使用 Nginx 作为基础镜像
FROM nginx:latest
# 创建用于存放 Hexo 生成的静态文件的卷
VOLUME /usr/share/nginx/html
# 将 Hexo 生成的静态文件复制到容器卷中
COPY public/ /usr/share/nginx/html/
# 暴露 Nginx 默认的 HTTP 端口 80
EXPOSE 80
# 设置容器启动时运行的命令
CMD ["nginx", "-g", "daemon off;"]

# 构建并运行 Docker 镜像

在终端中,使用以下命令构建 Docker 镜像

h
docker buildx build -t myhexo:1.0 .
  • docker buildx build: 这个命令会启动 Docker 的多架构镜像构建功能。
  • -t myhexo:1.0: 这个参数指定了构建完成后镜像的名称和标签。在这里,镜像名为 myhexo,标签为 1.0。
  • .: 这个点号代表当前目录,也就是 Docker 构建上下文的位置。Docker 会在这个目录中查找 Dockerfile 文件,并根据 Dockerfile 的指令来构建镜像。

构建完成后,你可以使用以下命令运行容器:

h
docker run -p 4000:80 myhexo:1.0

也可以在 docker desktop 程序中 查看管理 镜像