Docker アプリ導入

install_redis705_base_docker.sh

/data/redis7.0.5 を作成し、redis.conf がない場合だけ設定を書き、redis:7.0.5 を取得して同名コンテナーを置き換えます。既存設定とデータは再利用し、新しいパスワード引数で既存 requirepass は更新しません。

ワンライナー

curl -fL 'https://www.helper.sh/install_redis705_base_docker.sh' -o './install_redis705_base_docker.sh'

このコマンドは同梱ファイルをダウンロードするだけで、実行しません。保存したソースを確認し、バージョンを照合してから実行するか判断してください。

保存したファイルを照合

このページのビルドに同梱されたバイト列と照合します。ファイルはこのタブ内で処理し、この機能は送信・保存しません。上限は2 MiBです。

期待する SHA-256
1dff99da3bc7da24e7e14dace74a716a9be1592b77ce03a42864065022bf391b

同梱ファイルのバイト数: 4562

チェックサムファイルを保存

スクリプトとチェックサムを同じディレクトリに保存してください。GNU Coreutils のある Linux では次のコマンドでバイト列だけを検査できます。スクリプトは実行しません。コマンドには元のファイル名が必要です。

sha256sum --check './install_redis705_base_docker.sh.sha256'

まだ照合していません。

スクリプトとチェックサムは同じサイトから取得し、独立した署名ではありません。一致しても安全性、上流の真正性、ホストへの適合性は証明しません。可変の依存先は別途確認してください。

検証と制限を読む

実行条件

  • Linux ホスト
  • 稼働中の Docker
  • root または sudo 権限
  • 空いている6379番ポート
  • 書き込み可能な /data

適用場面

  • 既存アプリの Redis 7.0.5 互換性を確認する環境の準備
  • ホスト上の /data/redis7.0.5 で設定とデータを管理
  • キャッシュやキューの引き継ぎ時に起動手順を確認

主なポイント

  • /data/redis7.0.5/data と conf を作成
  • redis:7.0.5 を取得し、既存設定を再利用してコンテナーを置換
  • 未指定の場合はパスワードを生成。ただし既存 requirepass は更新しない
  • 設定がなければ appendonly などの基本設定を作成

推奨手順

  1. Docker の状態、6379番ポートと公開範囲を確認します。
  2. ファイルを取得・確認してから root での実行を判断します。
  3. /data/redis7.0.5 の設定とデータを確認し、同名コンテナーの置換に備えます。
  4. 実際に有効なパスワードで PONG を確認します。既存 redis.conf があると表示されたパスワードと requirepass が一致しない場合があります。設定と端末出力を保護してください。

注意事項

  • ネットワーク制御なしに Redis を公開しないでください。
  • 生成した認証情報は保護し、既存設定で有効な値と区別してください。
  • 本番コンテナーの置換前に /data/redis7.0.5 のバックアップを別途用意してください。

対応範囲と制限

  • systemd を使う Linux、Docker、root、書き込み可能なデータディレクトリ、空きホストポート(既定 6379)が必要です。redis:7.0.5 に固定された旧版互換用の例です。
  • 引数は --data-dir、--container-name、--port、--password です。REDIS_PASSWORD も読みます。dry-run、バックアップ、自動復旧はありません。パスワードを redis.conf と端末出力へ書き、確認処理の引数にも渡します。Redis 設定用に任意のパスワードをエスケープしません。
  • 既存の conf/redis.conf を保持します。新しく指定・生成したパスワードでは requirepass は変更されません。表示されたパスワードや CLI 終了コードの確認だけでは認証成功を証明できません。

変更されるファイル、サービス、データ

  • 既定で /data/redis7.0.5/data と conf を作成します。redis.conf がない場合だけ bind 0.0.0.0、protected-mode yes、appendonly yes、スナップショット規則、requirepass を書きます。
  • Docker が停止中なら起動し、redis:7.0.5 を取得。同名コンテナーを強制削除して再作成します。データと読み取り専用設定をマウントし、ホストアドレスを限定せず指定ポートからコンテナーの 6379 番を公開します。既存データはバックアップなしで再利用します。

読み取り専用の確認

  • 名前・パスを変更した場合は読み替えます。`docker ps --filter name=redis705`、`docker logs --tail 100 redis705`、`docker inspect redis705 --format '{{json .Mounts}} {{json .HostConfig.PortBindings}}'` を確認します。
  • `sudo grep -nE '^(bind|port|protected-mode|appendonly|dir) ' /data/redis7.0.5/conf/redis.conf` でパスワードを表示せず設定を確認します。
  • `docker exec -it redis705 redis-cli --askpass PING` で有効なパスワードを入力し、実際の PONG 応答を確認します。アプリ接続と既存データは別途確認してください。スクリプトは終了コードだけを見て応答本文は比較しません。

失敗した場合

認証や起動確認に失敗したらデータと redis.conf を保全し、既存ファイルに別のパスワードがないか確認します。所有者、公開ポート、ログは非公開で確認してください。確認が警告だけでも完了表示が出ます。設定を解決してバックアップを取ってから再作成を検討します。パスワード引数だけでは既存設定の認証情報は更新されません。

Redis CLI

実行前にダウンロードして内容を確認し、バージョンを検証してください。ハッシュはこのバイト列を識別するだけで、安全性を証明しません。pipe 実行は取得した内容を直ちに実行し、上流の依存関係は変化することがあります。

関連記事

Redis に新しいパスワードが表示されても認証できない場合

Redis 7.0.5 インストーラーを再実行する前に、保持された redis.conf を確認します。共有コマンドにパスワードを書かず、データを保全して実際の応答を確認します。

関連トピック

Docker サービス: 接続口と残存データを確認

HTTP、SQL、キャッシュ、FastCGI、イメージ内アプリを、プロトコルとデータ・置換影響で選びます。

トピックを見る