【运维】docker-compose部署redis

ops/2024/11/14 13:26:21/

部署Redis使用docker-compose是一种简便且流行的方式。以下是基本的docker-compose.yml文件示例,用于部署单节点Redis服务

方案一

直接使用docker安装单机版
创建.env环境文件并配置管理密码

echo 'REDIS_PWD=redis123456' > .env

创建docker-compose.yml环境文件

## docker-compose config                  ## 检查当前目录docker-compose.yml文件配置是否正确
## docker-compose up -d                   ## -d 为后台启动
## docker-compose up -d --force-rereate  ## 强制重新创建容器,修改挂载文件后使用该命令启动,谨慎使用,调试时可使用,使用此命令可能造成数据丢失version: "3"
services:redis:image: redis:6.2.6container_name: redis6.2.6## 设置持久化,允许远程访问,密码等command: redis-server --appendonly yes --bind 0.0.0.0 --requirepass ${REDIS_PWD}ports:- 6379:6379volumes:- ./data/:/dataenvironment:- TZ=Asia/Shanghairestart: always

方案二

dockercomposeyml_30">创建docker-compose.yml环境文件

version: '3.8'services:redis:image: redis:latestcontainer_name: redis_serverports:- "6379:6379"volumes:- redis_data:/dataenvironment:- REDIS_PASSWORD=yourpasswordcommand: redis-server --appendonly yes --requirepass ${REDIS_PASSWORD}volumes:redis_data:driver: local

解析文件内容

  • version: 定义了docker-compose文件使用的版本,这里使用的是3.8。
  • services: 下面定义了要部署的服务,在本例中是Redis。
  • image: 指定使用的Redis镜像,这里使用的是Docker Hub上的最新官方Redis镜像。
  • container_name: 给容器指定一个名称。
  • ports: 将容器的6379端口映射到宿主机的6379端口,Redis默认端口。
  • volumes: 映射一个卷redis_data到容器内的/data目录,用于持久化存储Redis的数据。
  • environment: 设置环境变量,这里设定了Redis的密码。
  • command: 启动Redis服务器时使用的命令,开启AOF持久化,并设置访问密码。

安全注意事项

  • 密码保护:示例中使用环境变量REDIS_PASSWORD设置了一个密码。在实际使用中,请确保使用一个强密码替换yourpassword。
  • 网络安全:默认情况下,Redis容器将端口映射到宿主机上,这可能会使Redis面对外部访问。确保配置合适的防火墙规则或在安全的内部网络中运行。

这里提供了两个基本的Redis部署示例供参考,适合开发和测试环境。对于生产环境,你可能需要考虑更多的安全措施和配置细节。

扩展

1、【运维】ansible批量安装docker(ansible牛逼,不要太爽了)
2、【运维】在centos7系统中如何给docker配置代理
3、【运维】portainer管理远程dockerdocker-swarm集群
4、【运维docker-compose安装minio集群


http://www.ppmy.cn/ops/13539.html

相关文章

Anon Network:基于 Ator Protocol 的 DePIN 匿名互联网

Anon Network正在以Ator Protocol为基础构建世界上最大的Web3隐私互联网生态,其旨在基于DePIN网络(Ator protocol),通过激励体系构建一个自下而上、自我维持且可持续、不依赖于任何三方实体且完全匿名的完备互联体系。在该体系中&…

达梦数据库的DMRMAN工具-管理备份(备份集删除)

达梦数据库的DMRMAN工具-管理备份(备份集删除) 基础信息 OS版本: Red Hat Enterprise Linux Server release 7.9 (Maipo) DB版本: DM Database Server 64 V8 DB Version: 0x7000c 03134284132-20240115-215128-200811 概述 DMRM…

【Java】HashMap、HashTable和ConcurrentHashMap的区别

文章目录 区别一、HashMap1.1基本定义与特性1.2工作原理与实现1.3常用方法1.4性能与优化 二、HashTable三、ConcurrentHashMap3.1基本特点3.2实现原理3.3常用方法3.4适用场景3.5性能优化 HashTable、HashMap和ConcurrentHashMap之间的区别主要体现在线程安全、继承关系与实现接…

蓝桥杯2024年第十五届省赛真题-握手问题

方法一&#xff1a;模拟 #include<bits/stdc.h> using namespace std; #define int long long const int n1e6; int a,b[n],c; signed main() {for(int i1;i<50;i){for(int ji1;j<50;j){if(i<7&&j<7){continue;}c;}}cout<<c<<endl; }方…

DBeaver(其他可视化工具一样的逻辑)连接IoTDBDriver教程

DBeaver(其他可视化工具一样的逻辑&#xff09;连接IoTDBDriver教程 一 下载安装 官网下载链接&#xff1a; https://iotdb.apache.org/Download/二 安装 DBeaver 三 连接 点确定 选择IoTDB驱动 点击下一步 点击测试链接 点击确定 注意: 需要自己写查询语句才能看见…

【Python】Python函数的黑魔法:递归,嵌套函数与装饰器

欢迎来到CILMY23的博客 本篇主题为&#xff1a; Python函数的黑魔法&#xff1a;递归&#xff0c;嵌套函数与装饰器 个人主页&#xff1a;CILMY23-CSDN博客 系列专栏&#xff1a;Python | C | C语言 | 数据结构与算法 感谢观看&#xff0c;支持的可以给个一键三连&#xff…

笔记 | 嵌入式系统概论

1 嵌入式系统简介 1.1 嵌入式系统的定义 根据美国电气与电子工程师学会&#xff08;IEEE&#xff1a;Institute of Electrical and Electronics Engineers )的定义&#xff0c;嵌入式系统是用于控制、监视或辅助操作机器和设备的装置(原文: devices used to control, monitor…

大坝安全监测GNSS接收机:保障水库安全

大坝安全一直是社会关注的焦点之一。为了及时监测大坝的变形和位移情况&#xff0c;以预防可能发生的危险事故&#xff0c;GNSS接收机成为了不可或缺的仪器之一。本文将详细介绍GNSS接收机在大坝安全监测中的应用及其重要性。 一、GNSS接收机是什么 GNSS全球导航卫星系统&…