Skip to main content

GitHub Packages の MinIO ストレージバケットを設定するためのクイックスタート

GitHub Packages で使用するためにカスタム MinIO ストレージバケットを設定します。

Platform navigation

お使いの GitHub Enterprise Server インスタンス で GitHub Packages を有効にして設定する前に、サードパーティのストレージ ソリューションを準備する必要があります。

MinIO は、Enterprise で S3 API と GitHub Packages をサポートするオブジェクトストレージを提供します。

このクイックスタートでは、Docker を使用して GitHub Packages で使用するように MinIO をセットアップする方法を説明していますが、Docker 以外に MinIO を管理するオプションがあります。 MinIO の詳細については、公式の MinIO ドキュメントを参照してください。

1. ニーズに合わせて MinIO モードを選択する

MinIO モード最適化の対象必要なストレージインフラストラクチャ
スタンドアロン MinIO (シングルホスト)高速セットアップ適用なし
クラスタ型 MinIO (分散型 MinIO)データのセキュリティクラスタ内で実行中のストレージサーバー

オプションに関する詳細については、MinIO ドキュメントを参照してください。

2. MinIO をインストール、実行、サインインする

  1. MinIO のお好みの環境変数を設定します。

    これらの例では MINIO_DIR が使用されます。

    export MINIO_DIR=$(pwd)/minio
    mkdir -p $MINIO_DIR
    
  2. MinIO をインストールします。

    docker pull minio/minio
    

    詳しくは、公式の MinIO クイック スタート ガイドに関するページを参照してください。

  3. MinIO アクセスキーとシークレットを使用して MinIO にサインインします。

    $ export MINIO_ACCESS_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
    # this one is actually a secret, so careful
    $ export MINIO_SECRET_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
    
    $ export MINIO_ACCESS_KEY=$(cat /dev/urandom | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
    # this one is actually a secret, so careful
    $ export MINIO_SECRET_KEY=$(cat /dev/urandom | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
    

    環境変数を使用して MinIO キーにアクセスできます。

    echo $MINIO_ACCESS_KEY
    echo $MINIO_SECRET_KEY
    
  4. 選択したモードで MinIO を実行します。

    • 単一のホストで Docker を使用して MinIO を実行します。

      $ docker run -p 9000:9000 \
              -v $MINIO_DIR:/data \
              -e "MINIO_ACCESS_KEY=$MINIO_ACCESS_KEY" \
              -e "MINIO_SECRET_KEY=$MINIO_SECRET_KEY" \
              minio/minio server /data
      

      詳しくは、MinIO Docker クイックスタート ガイドに関するページを参照してください。

    • Docker をクラスタとして使用して MinIO を実行します。 この MinIO デプロイメントでは、複数のホストと MinIO のイレイジャーコーディングを使用して、最強のデータ保護を実現します。 クラスター モードで MinIO を実行するには、分散 MinIO クイック スタート ガイドに関するページを参照してください。

3. GitHub Packages の MinIO バケットを作成する

  1. MinIO クライアントをインストールします。

    docker pull minio/mc
    
  2. GitHub Enterprise Server がアクセスできるホスト URL を使用してバケットを作成します。

    • ローカルデプロイメントの例:

      export MC_HOST_minio="http://${MINIO_ACCESS_KEY}:${MINIO_SECRET_KEY} @localhost:9000"
      docker run minio/mc BUCKET-NAME
      

      この例は、MinIO スタンドアロンに使用できます。

    • クラスタ型デプロイメントの例:

      export MC_HOST_minio="http://${MINIO_ACCESS_KEY}:${MINIO_SECRET_KEY} @minioclustername.example.com:9000"
      docker run minio/mc mb packages
      

次の手順

GitHub Packages のストレージの設定を完了するには、MinIO ストレージ URL をコピーする必要があります。

echo "http://${MINIO_ACCESS_KEY}:${MINIO_SECRET_KEY}@minioclustername.example.com:9000"

次の手順については、「MinIO で GitHub Packages を有効にする」をご覧ください。