Mikuの鬆

Mikuの鬆

心有多宽,世界就有多远

あなたのために修正されたShiroのDockerイメージを構築します

前言#

Shiro は MixSpace のフロントエンドテーマ(コミュニティ版)であり、フロントエンドテーマのコードはオープンソースです。一部のユーザーは、自分の使用ニーズにより適合させるために修正を行います。もし、Docker イメージを使用して自分のサーバーにデプロイしたい場合、この記事はあなたのために用意されています。

なぜ... ではないのか#

Docker ビルド#

Docker ビルドは大量のサーバーリソースを使用します。これは、低い構成(2G 未満のメモリ)のクラウドサーバーにとっては困難であり、基本的にサーバーがメモリ不足でフリーズする原因となります。

クラウドファンクションデプロイ#

この方法を選ぶこともできますが、サイトのトラフィックがあまり多くないときに、Vercel や Netlify などのクラウドファンクションプラットフォームが提供する無料枠は Shiro をホスティングするには十分です。しかし、中国本土のサーバーにデプロイしたい場合や、より多くのトラフィックが必要な場合、クラウドファンクションプラットフォームの枠は不足することになります。

選択#

ここでは、Github 公式のイメージリポジトリを使用してイメージを保存することを選択します。国内でイメージを取得するためには、Geekery が提供するDockerHub イメージ加速などのプライベートイメージ加速サービスを利用できます。

手順#

リポジトリをフォーク#

まず、Innei/Shiro公式リポジトリを開き、自分のアカウントにフォークします。

一部ファイルを削除#

リポジトリのルートディレクトリにある.githubフォルダを直接削除します。公式のワークフローを使用する必要はありません。

魔改#

リポジトリに対して、あなたのニーズに合わせた魔改コードを開始できます。

新しいワークフローを作成#

リポジトリの.github/workflowsディレクトリに新しい yml ファイルを作成します。名前は自由で、コードは以下の通りです:

name: Docker Build
on:
  push:
    branches:
      - 'main'
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v3

      - name: Set up Docker Buildx
        uses: docker/setup-buildx-action@v3

      - name: Login to Registry
        uses: docker/login-action@v3
        with:
          registry: ghcr.io
          username: ${{ github.actor }}
          password: ${{ secrets.GITHUB_TOKEN }}

      - name: Build and push
        uses: docker/build-push-action@v4
        with:
          context: .
          file: ./Dockerfile
          platforms: linux/amd64
          push: true
          tags: ghcr.io/innei/shiro:latest

最下部のBuild and pushステップのtagghcr.io/innei/shiro:latestから、自分が適切だと思う名前に変更するだけで大丈夫です。大文字は含めないように注意してください。覚えやすくするために、個人の Github ユーザー名の小文字を使用してinneiの代わりにイメージの名前空間として選択してください。

ワークフローファイルを保存し、実行が完了するのを待ちます。リポジトリの側面のPackagesまたは個人の Github アカウントのホームページのPackageでイメージファイルを見つけることができるはずです。

使用#

提供されたプル方法を参考にし、サーバーでdocker pullコマンドを使用してイメージを取得します。

この記事は Mix Space によって xLog に同期更新されました。原始リンクは https://www.sotkg.com/posts/site/shiro-docker-deployment

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。