systemctl start docker
docker pull redis:5.0.3
バージョン番号が指定されていない場合は、最新バージョンをプルします
mkdir -p /root/redis/data /root/redis/conf
touch /root/redis/data /root/redis/conf/redis.conf
ダウンロード リンク: https://www.lanzous.com/i68hlah
この構成ファイルは http://download.redis.io/releases/ からオンラインでダウンロードでき、主に次の構成が変更されます。
変更前:
bind 127.0.0.1 protected-mode yes #requirepass yourpassword
変更後:
#bind 127.0.0.1 protected-mode no requirepass yourpassword
yourpassword はパスワードです。
docker run -d --name redis -p 6379:6379 -v /root/redis/conf/redis.conf:/redis.conf -v /root/redis/data:/data redis:5.0.3 redis-server --appendonly yes
-d バックグラウンドで実行
-p ポートをホストのポートにマップします
-v ホスト ディレクトリをマウントしますコンテナのディレクトリ
redis-server --appendonly yes: コンテナで redis-server 起動コマンドを実行し、redis 永続化構成を開きます
docker start redis
上記のコマンドを実行すると、次のエラーが報告される場合:
Error response from daemon: driver failed programming external connectivity on endpoint redis (086c7fdf5eb7a696753d7414e93202eefd474370658e8c090bca5608c6e29a11): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 6379 -j DNAT --to-destination 172.17.0.2:6379 ! -i docker0: iptables: No chain/target/match by that name. (exit status 1)) Error: failed to start containers: redis
解決策: docker を再起動し、redis コンテナを再起動します
systemctl restart docker docker start redis
firewall-cmd --zone=public --add-port=6379/tcp --permanent firewall-cmd --reload
##10. 接続エラー
接続に失敗した場合は、まずサーバー上の redis にログインできるかどうかを確認してください
docker exec -it redis redis-cli
redis を入力した後、次のコマンドを入力します:
auth "你的密码"
プロンプトが表示されたら:
(error) ERR Client sent AUTH, but no password is set
設定を示します。 パスワードが有効にならない場合は、次のコマンドを再度実行する必要があります:
config set requirepass “你的密码”
以上がDocker のインストール Redis インスタンスの分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。