はじめに
Redisは、非常に高速なリモートインメモリデータベースソリューションです。 Key-Valueデータモデルにより、Redisは高可用性と読み取り/書き込み速度を維持しながら、大規模なデータセットを処理できます。
RedisのようなNoSQLデータベースは、水平方向にスケールアウトする分散クラスターで効率的に実行することを目的としています。 Dockerを使用してRedisをコンテナーにデプロイすると、水平スケーリングが日常的で簡単なプロセスになります。
このチュートリアルでは、DockerコンテナにRedisをデプロイする方法について説明します。 あっという間に。
前提条件
- コマンドラインへのアクセス
- 動作するDockerインストール
- rootを持つユーザー またはsudo 特権
DockerRedisコンテナを起動する
1.ターミナルで次のコマンドを入力して、Dockerサービスの現在のステータスを確認します。
sudo systemctl status docker 出力は、Dockerが実行中でアクティブであることを確認します。
2. Redisコンテナを取得して開始します( my-first-redis ) docker runを使用 コマンド:
sudo docker run --name my-first-redis -d redis コマンドはRedisのバージョンを指定しませんでした。システムは、デフォルトで利用可能な最新バージョンのRedisのダウンロードに進みます。
3.インストールプロセスが完了したら、 docker psを使用して現在のDockerコンテナのステータスを確認します コマンド:
sudo docker ps 他の情報の中でも、システムは以下を提供します:
- 一意のコンテナID– b36262951bf4
- アクセスポート– 6379 (デフォルトのRedisポート番号)
- 定義されたコンテナ名– my-first-redis
redis-cliを使用してRedisに接続する
インタラクティブなredis-cliを開始します 次のコマンドを使用したコマンドシェル:
sudo docker exec -it my-first-redis sh
インタラクティブシェルにアクセスしたら、 redis-cliと入力します Redisコンテナインスタンスに接続します。
基本的なRedisコマンドを試す
1. Redis ping このコマンドは、Redisデータベースへの接続がアクティブかどうかをテストするのに役立ちます:
ping 応答、 PONG 、接続が成功したことを示します。
2. Key-Valueストアは、可能な限り単純なデータモデルを使用します。一意のキーは値とペアになっています。 setコマンドを使用して、キー nameを定義します 値のペアはpnap :
set name pnap
3.一意のキーnameを使用して値を取得できます およびget コマンド:
get name
結果は、以前に定義された pnapを取得します 価値。データ型とコマンドのリストは、包括的なガイドRedis Data TypesWithCommandsにあります。
4. redis-cliコマンドを調べたら、 quitと入力します。 コンテナターミナルのインターフェースに戻ります。
5. exitと入力します Dockerコンテナとの接続を閉じます。
カスタムredis.confファイルの使用(オプション)
redis.conf fileを使用すると、認証の設定、コマンドの制限、およびその他のセキュリティ指向の設定を定義できます。
カスタムRedis構成ファイルを作成した場合は、次のコマンドを使用して、コンテナーの起動時にファイルをロードします。
sudo docker run --name my-first-redis -v /myfirstredis/redis.conf:/usr/local/etc/redis/redis.conf -d redis redis.confの場所 この例のファイルはmyfirstredis/ redis.conf 。 システム上の場所に一致するようにパスを変更します。
別のDockerコンテナからRedisにアクセスする
1. --linkを使用します 新しいコンテナを作成して既存のRedisインスタンスに接続するオプション:
sudo docker run -it --rm --name my-second-redis --link my-first-redis:redis -d redis このコマンドは、新しいRedisコンテナ( my-second-redis )を開始しました )、最初のredisイメージに基づきます。 my-first-redis コンテナはredisと呼ばれます 2番目のコンテナ内。
さらに、 --rm オプションは、インタラクティブシェルを終了した後、2番目のコンテナがそれ自体を削除することを保証します。このアクションはオプションであり、リソースを節約するために使用されます。
2. my-second-redis内でインタラクティブシェルを開始します コンテナ:
sudo docker exec -it my-second-redis sh 3. my-second-redisでRedisコマンドラインを起動します コンテナを作成し、 my-first-redisに接続します (現在は redisという名前です )、次のコマンドを使用します:
# redis-cli -h redis
4.元のmy-first-redis コンテナはまだアクティブです。 name 以前に作成されたキーが利用可能であり、2番目のコンテナからアクセスできます:
redis:6379> get name
結果のペア値はpnapです。 。
5. quitと入力します redis-cliを終了してから、 exitと入力します ターミナルに戻るには:
redis:6379> quit
# exit
リモートサーバーからRedisにアクセス
Dockerポート転送機能を使用して、リモートサーバーからRedisコンテナーにアクセスできます。
1.リモート接続に使用するポートを定義します:
sudo docker run --name my-first-redis -p [port_number]:6379 -d redis 2.ホスト名またはIPと新しく定義されたポート番号を使用して、リモートサーバーからRedisコンテナにアクセスします。
sudo redis-cli -h [host or IP] -p [port_number] -a [password]
-a 認証フラグはオプションです。使用する場合は、Redisデータベースにアクセスするためのパスワードの入力をユーザーに要求します。