From 0d2db0f2c52e8bce8cb25a1652f22a90af7b1bb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=82=85=E5=93=A5?= <184172133@qq.com> Date: Sun, 23 Jun 2024 10:25:31 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E9=83=A8=E7=BD=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/main.yml | 42 +++++++++++++++++++ dev-ops/docker-compose.yml | 2 +- dev-ops/generate_ssh_key.sh | 30 +++++++++++++ dev-ops/nginx/html/404.html | 8 ++-- .../nginx/html/assets/404.html-048aa500.js | 1 + .../nginx/html/assets/404.html-73784df6.js | 1 + dev-ops/nginx/html/assets/app-730966a2.js | 28 +++++++++++++ .../nginx/html/assets/day01.html-a79d71e6.js | 1 + .../nginx/html/assets/day01.html-ad96ec1c.js | 3 ++ .../nginx/html/assets/day02.html-00bf8198.js | 1 + .../nginx/html/assets/day02.html-ffe64e50.js | 1 + .../nginx/html/assets/day03.html-1b507bd1.js | 1 + .../nginx/html/assets/day03.html-1ef4dad7.js | 1 + .../nginx/html/assets/day04.html-497de75d.js | 1 + .../nginx/html/assets/day04.html-62d76ff2.js | 1 + .../nginx/html/assets/day05.html-aee4df3f.js | 10 +++++ .../nginx/html/assets/day05.html-db97d81b.js | 1 + .../nginx/html/assets/day06.html-5d3976fa.js | 1 + .../nginx/html/assets/day06.html-d0af6104.js | 1 + .../html/assets/day07~day08.html-217582c7.js | 1 + .../html/assets/day07~day08.html-2741ee52.js | 1 + .../html/assets/day09~day10.html-d9a42f55.js | 1 + .../html/assets/day09~day10.html-e323e2ff.js | 1 + .../nginx/html/assets/day11.html-19d7d95c.js | 1 + .../nginx/html/assets/day11.html-6eb61b6a.js | 1 + .../nginx/html/assets/day12.html-20e3dc2e.js | 15 +++++++ .../nginx/html/assets/day12.html-9794e98b.js | 1 + .../nginx/html/assets/index.html-0add57e6.js | 1 + .../nginx/html/assets/index.html-30eb3ac4.js | 1 + .../nginx/html/assets/index.html-552d2519.js | 1 + .../nginx/html/assets/index.html-56401246.js | 1 + .../nginx/html/assets/index.html-6cce501e.js | 1 + .../nginx/html/assets/index.html-b9d120b6.js | 1 + .../nginx/html/assets/resume.html-4702c01a.js | 1 + .../nginx/html/assets/resume.html-4bd68869.js | 1 + .../nginx/html/assets/slides.html-4c110bc4.js | 1 + .../nginx/html/assets/slides.html-e2ee6b5d.js | 6 +++ dev-ops/nginx/html/index.html | 8 ++-- dev-ops/nginx/html/md/dev-log/day01.html | 10 ++--- dev-ops/nginx/html/md/dev-log/day02.html | 8 ++-- dev-ops/nginx/html/md/dev-log/day03.html | 8 ++-- dev-ops/nginx/html/md/dev-log/day04.html | 8 ++-- dev-ops/nginx/html/md/dev-log/day05.html | 10 ++--- dev-ops/nginx/html/md/dev-log/day06.html | 8 ++-- .../nginx/html/md/dev-log/day07~day08.html | 8 ++-- .../nginx/html/md/dev-log/day09~day10.html | 8 ++-- dev-ops/nginx/html/md/dev-log/day11.html | 8 ++-- dev-ops/nginx/html/md/dev-log/day12.html | 10 ++--- dev-ops/nginx/html/md/dev-log/index.html | 8 ++-- dev-ops/nginx/html/md/index.html | 8 ++-- dev-ops/nginx/html/md/resume.html | 8 ++-- dev-ops/nginx/html/sitemap.xml | 2 +- dev-ops/nginx/html/slides.html | 6 +-- 53 files changed, 230 insertions(+), 68 deletions(-) create mode 100644 .github/workflows/main.yml create mode 100644 dev-ops/generate_ssh_key.sh create mode 100644 dev-ops/nginx/html/assets/404.html-048aa500.js create mode 100644 dev-ops/nginx/html/assets/404.html-73784df6.js create mode 100644 dev-ops/nginx/html/assets/app-730966a2.js create mode 100644 dev-ops/nginx/html/assets/day01.html-a79d71e6.js create mode 100644 dev-ops/nginx/html/assets/day01.html-ad96ec1c.js create mode 100644 dev-ops/nginx/html/assets/day02.html-00bf8198.js create mode 100644 dev-ops/nginx/html/assets/day02.html-ffe64e50.js create mode 100644 dev-ops/nginx/html/assets/day03.html-1b507bd1.js create mode 100644 dev-ops/nginx/html/assets/day03.html-1ef4dad7.js create mode 100644 dev-ops/nginx/html/assets/day04.html-497de75d.js create mode 100644 dev-ops/nginx/html/assets/day04.html-62d76ff2.js create mode 100644 dev-ops/nginx/html/assets/day05.html-aee4df3f.js create mode 100644 dev-ops/nginx/html/assets/day05.html-db97d81b.js create mode 100644 dev-ops/nginx/html/assets/day06.html-5d3976fa.js create mode 100644 dev-ops/nginx/html/assets/day06.html-d0af6104.js create mode 100644 dev-ops/nginx/html/assets/day07~day08.html-217582c7.js create mode 100644 dev-ops/nginx/html/assets/day07~day08.html-2741ee52.js create mode 100644 dev-ops/nginx/html/assets/day09~day10.html-d9a42f55.js create mode 100644 dev-ops/nginx/html/assets/day09~day10.html-e323e2ff.js create mode 100644 dev-ops/nginx/html/assets/day11.html-19d7d95c.js create mode 100644 dev-ops/nginx/html/assets/day11.html-6eb61b6a.js create mode 100644 dev-ops/nginx/html/assets/day12.html-20e3dc2e.js create mode 100644 dev-ops/nginx/html/assets/day12.html-9794e98b.js create mode 100644 dev-ops/nginx/html/assets/index.html-0add57e6.js create mode 100644 dev-ops/nginx/html/assets/index.html-30eb3ac4.js create mode 100644 dev-ops/nginx/html/assets/index.html-552d2519.js create mode 100644 dev-ops/nginx/html/assets/index.html-56401246.js create mode 100644 dev-ops/nginx/html/assets/index.html-6cce501e.js create mode 100644 dev-ops/nginx/html/assets/index.html-b9d120b6.js create mode 100644 dev-ops/nginx/html/assets/resume.html-4702c01a.js create mode 100644 dev-ops/nginx/html/assets/resume.html-4bd68869.js create mode 100644 dev-ops/nginx/html/assets/slides.html-4c110bc4.js create mode 100644 dev-ops/nginx/html/assets/slides.html-e2ee6b5d.js diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..030618b --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,42 @@ +name: Deploy Blog Pages + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +jobs: + build-and-deploy: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + persist-credentials: false + + - name: Set up Node.js + uses: actions/setup-node@v2 + with: + node-version: '18.16.0' + + - name: Install dependencies + run: npm install + + - name: Build + run: npm run docs:build + + - name: Deploy to Nginx Server + env: + SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + SSH_HOST: ${{ secrets.SSH_HOST }} + SSH_USERNAME: ${{ secrets.SSH_USERNAME }} + SSH_PASSWORD: ${{ secrets.SSH_PASSWORD }} + REMOTE_PATH: ${{ secrets.REMOTE_PATH }} + run: | + mkdir -p ~/.ssh + echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa + chmod 600 ~/.ssh/id_rsa + ssh-keyscan $SSH_HOST >> ~/.ssh/known_hosts + #scp -r ./docs/.vuepress/dist/* $SSH_USERNAME@$SSH_HOST:$REMOTE_PATH + sshpass -p $SSH_PASSWORD scp -r ./dev-ops/nginx/html/* root@$SSH_HOST:$REMOTE_PATH diff --git a/dev-ops/docker-compose.yml b/dev-ops/docker-compose.yml index 30ed246..ce2021b 100644 --- a/dev-ops/docker-compose.yml +++ b/dev-ops/docker-compose.yml @@ -4,7 +4,7 @@ version: '3.9' services: # yum install -y httpd-tools nginx: - image: nginx:latest + image: nginx:1.25.1 container_name: nginx restart: always ports: diff --git a/dev-ops/generate_ssh_key.sh b/dev-ops/generate_ssh_key.sh new file mode 100644 index 0000000..aac2516 --- /dev/null +++ b/dev-ops/generate_ssh_key.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +# 设置默认的密钥文件路径 +KEY_PATH="$HOME/.ssh/id_rsa" + +# 检查是否已经存在密钥文件 +if [ -f "$KEY_PATH" ]; then + echo "SSH 密钥文件 $KEY_PATH 已经存在。" + read -p "是否覆盖现有密钥?(y/n): " choice + if [ "$choice" != "y" ]; then + echo "操作已取消。" + exit 1 + fi +fi + +# 生成新的 SSH 密钥对 +ssh-keygen -t rsa -b 4096 -f "$KEY_PATH" -N "" + +# 确保 .ssh 目录和 authorized_keys 文件存在 +mkdir -p "$HOME/.ssh" +touch "$HOME/.ssh/authorized_keys" + +# 将公钥添加到 authorized_keys 文件中 +cat "${KEY_PATH}.pub" >> "$HOME/.ssh/authorized_keys" + +# 设置正确的权限 +chmod 700 "$HOME/.ssh" +chmod 600 "$HOME/.ssh/authorized_keys" + +echo "新的 SSH 密钥对已生成,并添加到 authorized_keys 文件中。" diff --git a/dev-ops/nginx/html/404.html b/dev-ops/nginx/html/404.html index e1cd952..eb48a74 100644 --- a/dev-ops/nginx/html/404.html +++ b/dev-ops/nginx/html/404.html @@ -5,7 +5,7 @@ -