在平时的开发和折腾中,总会遇到各种各样的问题,踩各种各样的坑,原来是都记录在博客上的,但是发现有人搞这种专门的笔记站,感觉不错,所以我也打算搞一个:
新建一个 github
仓库,然后按照 vue-press-hope 主题官方说明初始化项目:
bashnpm init vuepress-theme-hope@next [dir]
按照官网的说明配置项目即可,慢慢来,细心即可。注意的是我们的场景并不需要主页,所以 home: true
去掉就行了。
nav bar
、主题色
、搜索
等,按照文档走就行。注意复制按钮
需要设置一下才能用,不然点了也没用。
默认初始化项目会询问你是否加一个自动部署到 github pages
的提示,如果需要的话点需要就行了。
这里提供一个我用的 Dockerfile
用来部署到自己的服务器。
dockerfileFROM node:18 as builder WORKDIR /app COPY . . RUN yarn RUN yarn docs:build FROM nginx WORKDIR /usr/share/nginx/html/ COPY --form=builder /app/.vuepress/dist/ ./
也提供一个我用来部署到 k8s
的 github actions
:
yamlname: 部署文档
on:
push:
branches:
- "master"
jobs:
deploy-pages:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: 获取版本
run: |
FILENAME=`date +"%y%m%d%H%M%S"`
echo "::set-output name=VERSION::$FILENAME"
id: get_version
- name: 展示版本
run: echo ${{ steps.get_version.outputs.VERSION }}
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v1
- name: Login to AliyunCS
uses: docker/login-action@v1
with:
registry: registry.cn-beijing.aliyuncs.com
username: ${{ secrets.ALI_USER }}
password: ${{ secrets.ALI_PASSWORD }}
- name: 设置 Node.js
uses: actions/setup-node@v3
with:
node-version: 16
cache: yarn
- name: 安装依赖
run: yarn install --frozen-lockfile
- name: 构建文档
env:
NODE_OPTIONS: --max_old_space_size=4096
run: |-
yarn run docs:build
id: image-name
- name: 打包镜像并推送
uses: docker/build-push-action@v2
with:
context: .
file: ./Dockerfile
platforms: linux/amd64
push: true
tags: |
"registry.cn-beijing.aliyuncs.com/mereith/gists:${{ steps.get_version.outputs.VERSION }}"
- name: 部署到集群
uses: steebchen/kubectl@v2.0.0
with: # defaults to latest kubectl binary version
config: ${{ secrets.K8S_CONFIG_DATA }}
command: set image -n tools deployment/gists gists=registry.cn-beijing.aliyuncs.com/mereith/gists:${{ steps.get_version.outputs.VERSION }}
- name: send Message To me
run: |
curl -X POST -H "Content-Type: application/json" -d '{"source":"github-ci:gists-doc","message":"流水线运行完毕,${{ steps.get_version.outputs.VERSION }} 已部署"}' ${{ secrets.WEBHOOK_URL }}
本文作者:mereith
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!