当前位置: 首页 > article >正文

使用Docker启动Redis容器并映射端口

在现代软件开发中,Redis 是一种非常流行的开源内存数据结构存储,通常用作数据库、缓存或消息传递系统。Docker 是一个开源的应用容器引擎,它允许开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上。在本文中,我们将介绍如何使用 Docker 快速启动一个 Redis 容器,并增加映射端口的参数以便于访问。

为什么使用 Docker 启动 Redis?

  1. 环境一致性:Docker 容器确保了开发、测试和生产环境的一致性。
  2. 快速部署:容器可以在几秒钟内启动,大大减少了部署时间。
  3. 资源隔离:每个容器都是相互隔离的,这有助于避免资源冲突。
  4. 易于维护:容器化的应用程序更容易维护和更新。

准备工作

在开始之前,请确保你已经安装了 Docker。你可以从 Docker 官网下载并安装 Docker Desktop 或 Docker Engine。

步骤 1: 拉取 Redis 镜像

Redis 官方提供了 Docker 镜像,你可以直接从 Docker Hub 拉取。打开你的命令行工具,执行以下命令:

docker pull redis

这个命令会从 Docker Hub 下载最新的 Redis 镜像到你的本地。

步骤 2: 启动 Redis 容器并映射端口

为了能够从宿主机或其他设备访问 Redis 容器,我们需要将容器的端口映射到宿主机的端口。使用以下命令启动 Redis 容器并映射端口:

docker run --name some-redis -d -p 6379:6379 redis

这里的 -p 6379:6379 参数表示将容器的 6379 端口映射到宿主机的 6379 端口。这样,你就可以通过宿主机的 IP 地址和端口 6379 来访问 Redis 服务了。

端口映射解释

  • 宿主机端口:这是你的物理机器或虚拟机上监听的端口,其他设备通过这个端口与容器通信。在上面的命令中,宿主机端口是 6379
  • 容器端口:这是容器内部应用程序监听的端口。对于 Redis,默认端口是 6379。在映射中,我们通常保持这两个端口相同,但它们可以是不同的,只要你在连接时指定正确的端口。

步骤 3: 验证 Redis 容器

要检查你的 Redis 容器是否成功启动,可以使用以下命令:

docker ps

这个命令会列出所有正在运行的容器。你应该能在列表中看到你的 Redis 容器。

步骤 4: 访问 Redis 容器

你可以通过 Redis 客户端连接到你的 Redis 容器。首先,找到宿主机的 IP 地址或域名:

# 如果你在本地机器上运行,可以使用 localhost
redis-cli -h localhost -p 6379

如果你在远程服务器上运行,将 localhost 替换为服务器的 IP 地址或域名。

步骤 5: 停止和删除容器

当你完成测试后,可以使用以下命令停止并删除容器:

docker stop some-redis
docker rm some-redis

总结

使用 Docker 启动 Redis 容器并映射端口是一个快速且高效的方法,它可以让你在隔离的环境中测试和运行 Redis 服务,并且能够从外部访问。通过遵循上述步骤,你可以轻松地在你的本地机器或服务器上部署 Redis。


http://www.kler.cn/news/294563.html

相关文章:

  • ChatGPT3.5/4.0新手使用手册,国内中文版使用教程
  • 记录 vue-router 跳转到第一个有权限的菜单的实现方式
  • 【大模型开发】传统向量模型 vs 重排序模型:原理、实现与应用
  • 欺诈文本分类检测(十二):模型导出与部署
  • 八大排序原来也不过如此
  • 【软件逆向】第27课,软件逆向安全工程师之(二)寄存器寻址,每天5分钟学习逆向吧!
  • 【MIT 6.5840/6.824】In Search of an Understandable Consensus Algorithm 学习笔记
  • 如何使用useMemo来优化React组件的性能?
  • 7、关于LoFTR
  • 三维布尔运算对不规范几何数据的兼容处理
  • Linux 中常用的 Vim 命令大全
  • [OpenCV] 数字图像处理 C++ 学习——13Canny边缘检测 附完整代码
  • 828华为云征文 | Flexus X 实例服务器网络性能深度评测
  • 使用PowerShell导出Exchange邮箱大小
  • docker-network
  • GatewayWorker框架的详解和应用
  • [建模已更新]2024数学建模国赛高教社杯A题:“板凳龙” 闹元宵 思路代码文章助攻手把手保姆级
  • Hive整合MySQL
  • tabBar设置底部菜单选项以及iconfont图标
  • Java学习第七天
  • 【功能实现】如何实现点击后跳转到顶部??
  • 57-java csrf防御方案
  • 【Redis】Redis 集群搭建与管理: 原理、实现与操作
  • vue项目打包后,生成的index.html直接本地打开后没内容
  • Web:攻防世界unseping
  • 11Python的Pandas:可视化
  • Element Plus(Vue 3 版本)来实现图片轮播
  • P01-Java何谓数组
  • sheng的学习笔记-AI-概率图,隐马尔可夫HMM,马尔可夫随机场MRF,条件随机场CRF
  • 尝试用java spring boot+VUE3实现前后端分离部署(8/31)