Docker での Redis の最も詳細なインストールと構成 (画像とテキスト付き)

Docker での Redis の最も詳細なインストールと構成 (画像とテキスト付き)

1. Dockerに適したRedisのバージョンを見つける

docker hubで見つけることができます

https://hub.docker.com/_/redis?tab=tags

ここに画像の説明を挿入

2. dockerを使ってredisをインストールする

sudo docker pull redis

インストール後、 docker images即可查看

truedei@truedei:~$ 
truedei@truedei:~$ sudo docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
redis 最新 987b78fc9e38 10日前 104MB
httpd 最新 a8a9cbaadb0c 2週間前 166MB
fjudith/draw.io 最新 7b136fc80d31 3 週間前 683MB
mysql 5.7.29 f5829c0eee9e 5週間前 455MB
truedei@truedei:~$ 
truedei@truedei:~$ 

3. Redis設定ファイルを準備する

redis 設定ファイルが必要なので、公式 redis Web サイトにアクセスして redis 設定ファイルをダウンロードし、使用するのが最善です。

redis 中国語公式サイト: http://www.redis.cn/download.html

ここに画像の説明を挿入

ダウンロード後、解凍します。

ここに画像の説明を挿入

必要なのはこのredis.confファイルです。安全のため、コピーしてバックアップを作成してください。

4. redis.conf設定ファイルを設定する

redis.conf構成ファイルを変更します。
主な構成は次のとおりです。

bind 127.0.0.1 #この部分をコメントアウトして、redisを外部からアクセスできるようにします
daemonize no #デーモンスレッドとして起動
requirepass 你的密碼#redis のパスワードを設定する
appendonly yes #redis の永続性はデフォルトで no になります
tcp-keepalive 300 #リモートホストが既存の接続を強制的に閉じないようにします。デフォルトは 300 です

5. dockerにマップされたローカルディレクトリ、つまりローカルストレージの場所を作成します。

Redis を保存するローカルの場所を作成します。

カスタマイズ可能です。一部の docker 構成ファイルは/dataディレクトリに保存されているため、後で管理しやすくするために/dataディレクトリにredisディレクトリを作成します。

truedei@truedei:redis-5.0.5$ sudo cp -p redis.conf /data/redis/
truedei@truedei:redis-5.0.5$ です 

作成したファイルに配置文件をコピーします

私は Linux オペレーティング システムを使用しているため、直接コピーできます。Windows を使用している場合は、FTP を使用してコピーするか、コンテンツを直接コピーしてから貼り付ける必要がある場合があります。

truedei@truedei:redis-5.0.5$ sudo cp -p redis.conf /data/redis/ を実行します。
truedei@truedei:redis-5.0.5$ です 

6. docker redisを起動する

起動する:

truedei@truedei:~$ sudo docker run -p 6379:6379 --name redis -v /data/redis/redis.conf:/etc/redis/redis.conf -v /data/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes

パラメータの説明:

-p 6379:6379 : コンテナ内のポート6379をホストのポート6379にマップします
-v /data/redis/redis.conf:/etc/redis/redis.conf : ホスト上で設定された redis.conf をコンテナ内のこの場所に配置します
-v /data/redis/data:/data : ホストマシン上のredisの永続データを表示し、データのバックアップを作成します
redis-server /etc/redis/redis.conf : これは重要な設定であり、これにより、redis は設定なしで起動するのではなく、この redis.conf の設定に従って起動できるようになります。
–appendonly yes : Redis 起動後のデータ永続化

7. 起動が成功したかどうかを確認する

正常に起動したかどうかを確認します: sudo docker ps

truedei@truedei:~$ sudo docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
85cb7d83a2ff redis "docker-entrypoint.s..." 7 分前 7 分前にアップ 0.0.0.0:6379->6379/tcp redis
0a122a08125f mysql:5.7.29 "docker-entrypoint.s..." 5 週間前 約 1 時間前 0.0.0.0:3306->3306/tcp, 33060/tcp mysql57
truedei@truedei:~$ 

ここに画像の説明を挿入

ログを確認することができます: sudo docker logs redis

truedei@truedei:~$ sudo docker ログ redis
1:C 2020年5月29日 01:16:22.107 # oO0OoO0OoO0Oo Redisが起動しています oO0OoO0OoO0Oo
1:C 2020年5月29日 01:16:22.107 # Redis バージョン=6.0.3、ビット=64、コミット=00000000、変更=0、pid=1、開始しました
1:C 2020年5月29日 01:16:22.107 # 設定が読み込まれました
                _._                                                  
           _.-``__ ''-._                                             
      _.-`` `. `_. ''-._ Redis 6.0.3 (00000000/0) 64 ビット
  .-`` .-```. ```\/ _.,_ ''-._                                   
 ( ' , .-` | `, ) スタンドアロンモードで実行中
 |`-._`-...-` __...-.``-._|'` _.-'| ポート: 6379
 | `-._ `._ / _.-' | PID: 1
  `-._ `-._ `-./ _.-' _.-'                                   
 |`-._`-._ `-.__.-' _.-'_.-'|                                  
 | `-._`-._ _.-'_.-' | http://redis.io        
  `-._ `-._`-.__.-'_.-' _.-'                                   
 |`-._`-._ `-.__.-' _.-'_.-'|                                  
 | `-._`-._ _.-'_.-' |                                  
  `-._ `-._`-.__.-'_.-' _.-'                                   
      `-._ `-.__.-' _.-'                                       
          「-._ _.-」                                           
              「-.__.-」                                               

1:M 2020 年 5 月 29 日 01:16:22.108 # 警告: /proc/sys/net/core/somaxconn が 128 という低い値に設定されているため、TCP バックログ設定 511 を適用できません。
1:M 2020年5月29日 01:16:22.108 # サーバーが初期化されました
1:M 2020 年 5 月 29 日 01:16:22.108 # 警告: overcommit_memory が 0 に設定されています。メモリ不足の状況ではバックグラウンド保存が失敗する可能性があります。この問題を修正するには、/etc/sysctl.conf に 'vm.overcommit_memory = 1' を追加して再起動するか、コマンド 'sysctl vm.overcommit_memory=1' を実行してこれを有効にします。
1:M 2020 年 5 月 29 日 01:16:22.108 # 警告: カーネルで Transparent Huge Pages (THP) サポートが有効になっています。これにより、Redis で遅延とメモリ使用量の問題が発生します。この問題を修正するには、コマンド 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' を root として実行し、再起動後も設定が保持されるように /etc/rc.local に追加します。THP を無効にした後は、Redis を再起動する必要があります。
1:M 2020年5月29日 01:16:22.108 * 接続を受け入れる準備ができました
truedei@truedei:~$ 

ここに画像の説明を挿入

これで、docker での redis の最も詳細なインストールと構成 (画像とテキスト付き) に関するこの記事は終了です。docker での redis のインストールと構成に関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • DockerにRedisをインストールし、設定ファイルとして起動する詳細な説明
  • Dockerはredis 5.0.7をインストールし、外部構成とデータの問題をマウントします

<<:  ウィンドウ表示効果を実現するJavaScript

>>:  HTML における DTD の使用法の概要

推薦する

DockerプライベートイメージライブラリとAlibaba CloudオブジェクトストレージOSSの簡単な分析

Docker プライベートイメージライブラリDockerプライベートイメージライブラリとAlibab...

JS における for、for...in、for...of、forEach の違いと使用例

forループ基本的な構文形式: for(変数の初期化; 条件式; 演算式){ループ本体ステートメント...

シェルスクリプト nginx 自動化スクリプト

このスクリプトは、nginxの起動、停止、再起動の操作を満たすことができます。 #!/bin/bas...

Linux でプロセスを効果的に管理するための 8 つのコマンド

序文プロセス管理の役割:サーバーの健全性状態を判定する: プロセスの状態 (メモリ、CPU 占有率な...

Nginx で 403 forbidden を解決するための完全な手順

ウェブページに403 Forbiddenと表示されるNginx (yum インストール ログは通常 ...

Navicat for MySQL チュートリアル

まず、Navicat for MySQL をダウンロードしてインストールする必要があります。正規版の...

SSHトンネルを使用してMySQLサーバーに接続する方法

序文場合によっては、データベースのイントラネット アドレスしか知らず、イントラネット経由で接続できな...

el-select のスタイルを変更する方法の詳細な説明: popper-append-to-body と popper-class

elementUI が提供する el-select コンポーネントのスタイルを変更する方法この問題...

Vueは単純なランダムロールコールを実行します

目次レイアウト部分: <div id="アプリ"> <p>...

HTML タイトルに二重引用符を追加する方法

<a href="https://www.jb51.net/" title...

Windows で IP アドレスを指定してサーバーへのリモート アクセスを設定する方法

当社には、外部ネットワークからの干渉を受けることが多いサーバーが多数あります。侵入者はポート 338...

CSS3 テキストシャドウ text-shadow プロパティの詳細な説明

テキストシャドウ text-shadow プロパティの効果: 1. 右下隅の影、左下隅の影、左上隅の...

Vueプロジェクトが完了した後にプロジェクトを最適化する方法の例

目次1. 開発モードとリリースモードに異なるパッケージエントリポイントを指定する2. 外部CDNリソ...