Github Actions 는 SSH 를 통 해 Hexo 를 자동 으로 배치 합 니 다.
7162 단어 CI 지속 통합
Hexo 의 자동 배치
현재 의 주류 방식:
얼마 전에 놀 때
docker
로 docker
환경 을 만 들 었 는데 Hexo
환경 구축 사용 Hexo
이 너무 무 거 운 것 같 아 요.이번에 사용 한 것 은 Github Actions 입 니 다. 바로 간단 하고 VPS, 공유 창고 무료, 사유 창고 가 필요 없 기 때문에 매달 2000 분 동안 이 새로운 기능 을 체험 할 수 있 습 니 다. 저 는 deploy 방식 을 사용 하기 때문에 공유 창 고 는 당신 의 수요 에 달 려 있 습 니 다. github page, gitlab, coding, gitee, vps 등 이 있 습 니 다. 여 기 는 github 로 예 를 들 수 있 습 니 다.
deploy 방식 이기 때문에 플러그 인 을 설치 해 야 합 니 다.
npm install hexo-deployer-git --save
Hexo 프로젝트 루트 디 렉 터 리 설정 파일
docker
에 동시에 설정deploy:
type: git
repo: [email protected]:Github /Github .github.io.git
branch: master
환경 준비
따라서 아직 Hexo 를 만 들 지 않 았 다 면 공식 빠 른 시작 문 서 를 참고 하 십시오.
키 준비
GitHub Actions 를 편리 하 게 실행 할 때 GitHub 계 정 에 로그 인하 기 위해 SSH 방식 으로 로그 인 합 니 다.장치 의 비밀 키 를 GitHub Actions 에 맡 기 고 공개 키 를 GitHub 에 맡 기 려 면 Settings 에서 설정 해 야 합 니 다.
ssh - keygen 을 사용 하여 공공 비밀 키 쌍 을 생 성 합 니 다.
ssh-keygen -t rsa -C "Github "
ssh-keygen -t rsa -C "[email protected]"
_config.yaml
GitHub Actions 는 자신 만 의 용어 가 있 습 니 다.
블 로그 창고 의 Actions 옵션 에서 새 워 크 플 로 우 를 누 르 십시오. 이름 이 기본 또는 사용자 정의 로 변경 되 었 습 니 다. 다음 설정 을 작성 하 십시오.
# workflow name
name: Hexo Blog CI
# master branch on push, auto run
on:
push:
branches:
- master
jobs:
build:
runs-on: ubuntu-latest
steps:
# check it to your workflow can access it
# from: https://github.com/actions/checkout
- name: Checkout Repository master branch
uses: actions/checkout@master
# from: https://github.com/actions/setup-node
- name: Setup Node.js 10.x
uses: actions/setup-node@master
with:
node-version: "10.x"
- name: Setup Hexo Dependencies
run: |
npm install hexo-cli -g
npm install
- name: Setup Deploy Private Key
env:
HEXO_DEPLOY_PRIVATE_KEY: ${{ secrets.HEXO_DEPLOY_PRIVATE_KEY }}
run: |
mkdir -p ~/.ssh/
echo "$HEXO_DEPLOY_PRIVATE_KEY" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh-keyscan github.com >> ~/.ssh/known_hosts
- name: Setup Git Infomation
run: |
git config --global user.name 'Github '
git config --global user.email 'Github '
- name: Deploy Hexo
run: |
hexo clean
hexo generate
hexo deploy
이 명령 들 은 주석 이 필요 없 이 모두 알 아 볼 수 있 습 니 다. VPS 에 발표 하려 면 run 명령 만 실행 하면 됩 니 다.