欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

docker-compose配置并部署redis服務的實現(xiàn)

 更新時間:2022年04月03日 11:20:54   作者:zbjy  
本文主要介紹了docker-compose配置并部署redis服務的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

前言

在使用docker部署redis的時候,遇到很多坑,在此記錄下遇到的問題

一、安裝docker和docker-compose

### 安裝docker
curl -sSL https://get.daocloud.io/docker | sh

### 啟動docker
systemctl start docker

### 安裝docker-compose
curl -L https://get.daocloud.io/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
### 將可執(zhí)行權(quán)限應用于二進制文件
chmod +x /usr/local/bin/docker-compose

二、下載redis版本,本文中選擇的是6.2.6版本

下載網(wǎng)址:download.redis.io/releases/

三、解壓并復制redis.conf配置文件到服務器上,本文是放在/etc/redis/redis.conf

四、修改redis.conf配置文件

### 指定redis綁定的主機地址,注釋掉這部分,使redis可以外部訪問
    # bind 127.0.0.1 -::1
### 指定訪問redis服務端的端口
    port 6379
### 指定客戶端連接redis服務器時,當閑置的時間為多少(如300)秒時關(guān)閉連接(0表示禁用)
    timeout 0
### 默認情況下,Redis不作為守護進程運行。如果需要,請使用“yes”
    daemonize no
### 給redis設置密碼,不需要密碼的話則注釋
    # requirepass foobared
### 開啟redis持久化,默認為no
    appendonly yes
### 防止出現(xiàn)遠程主機強迫關(guān)閉了一個現(xiàn)有的連接的錯誤 默認是300
    tcp-keepalive 300
### 指定redis數(shù)據(jù)庫的日志級別,常用的日志級別有debug、verbose、notice、warning,不進行修改的情況下默認的是notice
    loglevel notice
### 指定redis數(shù)據(jù)庫多長時間內(nèi)(s)有多少次(c)更新操作時就把緩存中的數(shù)據(jù)同步到本地庫,比如:save 600 2,指的是10分鐘內(nèi)有2次更新操作,就同步到本地庫
    save <s><c>
### 指定redis的最大內(nèi)存。由于Redis 在啟動時會把數(shù)據(jù)加載到內(nèi)存中,當數(shù)據(jù)達到最大內(nèi)存時,redis會自動把已經(jīng)到期和即將到期的key值。所以可以根據(jù)需求調(diào)整自己的所需的最大內(nèi)存
    maxmemory 500mb
### 設置了maxmemory的選項,redis內(nèi)存使用達到上限。可以通過設置LRU算法來刪除部分key,釋放空間。默認是按照過期時間的,如果set時候沒有加上過期時間就會導致數(shù)據(jù)寫滿maxmemory
    maxmemory-policy volatile-lru
### 設置外部網(wǎng)絡連接redis服務,開啟需配置bind ip或者設置訪問密碼,關(guān)閉此時外部網(wǎng)絡可以直接訪問
    # protected-mode yes

五、配置docker-compose.yml

my_redis:
    image: redis:6.2.6-alpine # 指定服務鏡像,最好是與之前下載的redis配置文件保持一致
    container_name: my_redis # 容器名稱
    restart: on-failure # 重啟方式
    environment:
      - TZ=Asia/Shanghai # 設置時區(qū)
    volumes: # 配置數(shù)據(jù)卷
      - /root/redis/data:/data
      - /etc/redis/redis.conf:/etc/redis/redis.conf
    ports: # 映射端口
      - "6380:6379"
    sysctls: # 設置容器中的內(nèi)核參數(shù)
      - net.core.somaxconn=1024
   #  - vm.overcommit_memory=1
    command: /bin/sh -c "echo 'vm.overcommit_memory = 1' >> /etc/sysctl.conf
            && redis-server /etc/redis/redis.conf --appendonly yes" # 指定配置文件并開啟持久化
    privileged: true # 使用該參數(shù),container內(nèi)的root擁有真正的root權(quán)限。否則,container內(nèi)的root只是外部的一個普通用戶權(quán)限
復制代碼

六、啟動容器

### 啟動容器
docker-compose up -d

### 進入容器
docker exec -it my_redis /bin/sh
### 進入客戶端
redis-cli
### 如果設置了密碼,需要輸入auth 密碼
auth 你的密碼
### 查看已存儲的key
keys *
### 查看redis信息
info

七、redis啟動后遇到的問題

  • Warning: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128

意思:無法強制執(zhí)行TCP backlog設置511,因為/proc/sys/net/core/somaxconn被設置為較低的值128

echo "net.core.somaxconn=551" > /etc/sysctl.conf
sysctl net.core.somaxconn=551
  • Warning:overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect

意思: overcommit_memory的值設置為0! 在內(nèi)存不足的情況下,后臺保存可能會失敗。 要解決此問題,請將“vm.overcommit_memory = 1”添加到/etc/sysctl.conf,然后重新啟動或運行命令“sysctl vm.overcommit_memory = 1”以使其生效

echo 1 > /proc/sys/vm/overcommit_memory
echo "vm.overcommit_memory=1" >> /etc/sysctl.conf
sysctl vm.overcommit_memory=1
  • redis報錯:RDB: 0 MB of memory used by copy-on-write

由于我redis.conf配置文件,配置了save,將緩存中的數(shù)據(jù)同步到本地庫,所以我暫時的解決方法是取消保存,設置save ""

八、分享個redis可視化工具

redis-insight下載鏈接:https://redis.com/redis-enterprise/redis-insight/

到此這篇關(guān)于docker-compose配置并部署redis服務的實現(xiàn)的文章就介紹到這了,更多相關(guān)docker-compose配置部署redis服務內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker 入門快速上手指南

    Docker 入門快速上手指南

    本篇文章主要介紹了詳解Docker 快速上手指南,記錄 Docker 中的常用操作、指令,使得大家能夠快速地使用 Docker。
    2017-03-03
  • docker 數(shù)據(jù)卷之進階篇

    docker 數(shù)據(jù)卷之進階篇

    這篇文章主要介紹了docker 數(shù)據(jù)卷之進階篇,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • docker鏡像下載到本地并導入其他服務器方式

    docker鏡像下載到本地并導入其他服務器方式

    這篇文章主要介紹了docker鏡像下載到本地并導入其他服務器方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • docker使用registry搭建本地鏡像倉庫實例詳解

    docker使用registry搭建本地鏡像倉庫實例詳解

    這篇文章主要介紹了docker使用registry搭建本地鏡像倉庫實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • 關(guān)于構(gòu)建aarch64環(huán)境Mysql8.0的Docker鏡像問題

    關(guān)于構(gòu)建aarch64環(huán)境Mysql8.0的Docker鏡像問題

    這篇文章主要介紹了構(gòu)建aarch64環(huán)境Mysql8.0的Docker鏡像,需要的朋友可以參考下
    2022-04-04
  • 通過Docker為本地DeepSeek-r1部署WebUI界面的完整教程

    通過Docker為本地DeepSeek-r1部署WebUI界面的完整教程

    本文詳細介紹了如何通過Docker安裝并配置OpenWebUI,一個功能豐富的自托管Web用戶界面,用于與大型語言模型交互,文章步驟包括安裝Docker、配置WSL2、使用dockerrun命令部署OpenWebUI,并提供了詳細的命令解釋和部署結(jié)果,需要的朋友可以參考下
    2025-02-02
  • docker搭建tomcat運行環(huán)境的實現(xiàn)步驟

    docker搭建tomcat運行環(huán)境的實現(xiàn)步驟

    很多時候我們測試web系統(tǒng)需要一個tomcat運行環(huán)境,這時docker就派上用場了,本篇文章主要介紹了docker搭建tomcat運行環(huán)境的實現(xiàn)步驟,感興趣的可以了解一下
    2017-01-01
  • Docker-compose一鍵部署gitlab中文版的方法步驟

    Docker-compose一鍵部署gitlab中文版的方法步驟

    這篇文章主要介紹了Docker-compose一鍵部署gitlab中文版的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • Docker中Java基礎鏡像OpenJDK和OracleJDK使用方法

    Docker中Java基礎鏡像OpenJDK和OracleJDK使用方法

    OpenJDK是Java社區(qū)的核心項目,由全球各地的開發(fā)者共同參與開發(fā)和維護,OracleJDK在OpenJDK的基礎上添加了一些商業(yè)功能和工具,這篇文章主要給大家介紹了關(guān)于Docker中Java基礎鏡像OpenJDK和OracleJDK使用方法的相關(guān)資料,需要的朋友可以參考下
    2024-06-06
  • docker一鍵部署MySQL的實現(xiàn)示例

    docker一鍵部署MySQL的實現(xiàn)示例

    本文主要介紹了docker一鍵部署MySQL的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-08-08

最新評論