C#.Net Core 操作Docker中的redis数据库
做软件开发的人,会在本机安装很多开发时要用到的软件,比如数据库,有MS SQL Server,MySQL,等,如果每种数据库都按照在本机确实有点乱,这个时候我们就想用虚拟机来隔离,这样就不会扰乱本机一些配置啊环境变量啊等等。但虚机机太耗硬盘了,而且还物理隔离内存,分给它多少内存,本机就少多少内存,对于现在的笔记本电脑,大多都是固态硬盘256G,512G太昂贵了,这个时候Docker 就派上用场了,我把数据库按照Docker容器里,它是进程隔离的,干净又快捷,下面就来介绍一下,在Docker中安装redis内存数据库,并通过C#.Net Core来访问这个数据库。
我的机子是windows 10 pro版的,安装了docker for windows

测试本机docker安装情况=》打开命令行工具,输入docker -v 会显示docker安装的版本,说明正常运行了docker。
查看本机现有容器命令:docker ps
查看本机现有镜像命令:docker images
安装redis镜像命令:docker pull redis //默认从国外镜像站点DockerHub下载,如果下载太慢,可以使用国内镜像,可以访问 https://www.docker-cn.com/registry-mirror 查看如何操作,只有一条命令就可以了。
安装成功的信息:

再次使用docker images查看已有镜像

说明安装redis成功!
接下来要把这个镜像运行起来,就成了一个容器,有人把镜像比喻类,容器是类的实例,这很贴切,记住,镜像是不变的!镜像可以new() 多个容器出来。
运行镜像的命令是:docker run --name first-redis -p 6379:6379 -d redis
命令参数解释:--name firest-redis //给新建的容器命名;-p //映射端口,这样外部访问6379就能访问到容器内的6379端口了;-d redis //这个就是要指定镜像名称
运行结果,并用docker ps查看容器列表

redis数据库已经成功在docker容器中运行了,接下来我们要在数据库里创建一个键值对。
首先进入操作数据库的工具redis-cli。
命令如下:docker exec -it first-redis redis-cli

上面的命令我们利用reids-cli 设置了一个name 的值为 nick,并用 get name 获取这个值,返回“nick”,一切正常。
-------------------------------恶心的分割线-----------------------------------------------------------------------
下面我们来创建C#.Net Core 命令行项目来访问数据库
我们在D盘创建一个文件夹,用来存放我们的代码,直接用命令行操作就可以了。(Ctrl + C可以推出刚才进入redis-cli命令行)

去D盘的看看情况:

接下来,我们使用命令行命令通过VSCode工具打开项目:
命令如下:code .
注意:code 后一个空格加一个点,别丢了。这样就能启动vscode工具打开这个项目了。(会问要不要创建.vscode目录,点是)

接下来要让这个项目和docker中的redis建立关系,就需要安装一个客户端,客户端有很多,可以参考这里https://redis.io/clients#c

回到项目命令行,输入安装StackExchange.Redis的命令
命令如下:dotnet add package StackExchange.Redis

-----------------所有的准备工作都ok了,下面就是要写代码来访问了!------------------------------------------------------

回到命令行运行项目:dotnet run

一切如你所愿。
---------------------------------------------------------
参考地址:https://www.cnblogs.com/cgzl/p/10294175.html
C#.Net Core 操作Docker中的redis数据库的更多相关文章
- nopCommerce 3.9 大波浪系列 之 使用部署在Docker中的Redis缓存主从服务
一.概述 nop支持Redis作为缓存,Redis出众的性能在企业中得到了广泛的应用.Redis支持主从复制,HA,集群. 一般来说,只有一台Redis是不可行的,原因如下: 单台Redis服务器会发 ...
- 开发机直连 Docker 中的 Redis 容器小教程
在笔者日常开发中,都是把redis装在windows系统中.虽然可以通过RedisDesktopManager等客户端工具连接操作redis,但是还是觉得low了一些.因为作为程序员,我可能更想在Li ...
- C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志
C#实现多级子目录Zip压缩解压实例 参考 https://blog.csdn.net/lki_suidongdong/article/details/20942977 重点: 实现多级子目录的压缩, ...
- 从零开始学习docker之在docker中搭建redis(集群)
docker搭建redis集群 docker-compose是以多容器的方式启动,非常适合用来启动集群 一.环境准备 云环境:CentOS 7.6 64位 二.安装docker-compose #需要 ...
- docker中使用mysql数据库详解(在局域网访问)
开发过程中经常需要安装.调试mysql数据库,还需要在各种操作系上安装包依赖,实在是繁琐,因此就研究了一下如何在docker上运行一个mysql镜像,省却了我安装.找依赖的问题. 注:本文所有内容均在 ...
- 在docker中使用mysql数据库,在局域网访问
1.获取mysql镜像 docker pull mysql:5.6 注意:此处之所以获取mysql5.6是因为mysql5.7在centos7中启动可能会报错 2.查看镜像列表 docker imag ...
- 在docker中部署redis主从配置
环境说明: 阿里云服务器 Ubuntu 16.04 docker 1.拉取Redis镜像 docker pull redis 2.配置Redis启动配置文件,此处我创建一个专用目录,存放Redis相关 ...
- docker 中安装 redis
使用以下命令在Docker Hub搜索Redis镜像docker search redis 使用以下命令拉取镜像,Redis的镜像docker pull redis:latest 使用以下命令查看,本 ...
- docker 中运行 redis 服务
先使用 dockerfile 创建一个 redis 容器 FROM ubuntu:latest RUN apt-get update RUN apt-get -y install redis-serv ...
随机推荐
- Python从入门到精通之Forth!
Python基本数据类型之列表 补充:range()方法 python2: range 立即创建 xrange for循环的时候才一个一个创建 Python3: range for循环的 ...
- 使用mobx项目开发总结(不再更新)
mobx的优点 1,使用@observer的组件真正实现按需更新,只有监听的数据发生变化,它才会re-render,尽管父组件发生更新,但是子组件只要有@observer,则不会触发更新,类似于实 ...
- firebug定位工具很强大
firebug这个工具很强大,如果实在找不到自己想要的元素,就安装firebug这个定位工具妥妥的
- 1003 Emergency Dijkstra
这题做的心很累,我用的还是 1018的思路做的,但是 使用dfs 求最大人数对于某些有问题(现在也不知道错哪了), 看了别人的代码后才发现,其实完全不用这么麻烦,只需设置一个点的权重,一遍DJ(自创简 ...
- python0301
1 .pycharm的使用 2.格式化输出 # name = input('请输入姓名')# age = input('请输入年龄')# hobby = input('请输入爱好')# msg = ' ...
- Nikto学习点
一.使用Nikto扫描https站点 nikto.pl -output myhost.html -g -ssl -Format HTM -host www.test.com -port 443 二.使 ...
- 用idea部署maven-web项目
项目部署时,需要加一步: 我们需要添加一个archetypeCatalog=internal.这个参数的意义是让这个maven项目的骨架不要到远程下载而是本地获取.如果你没加这个参数,那么项目创建可能 ...
- WebServices 注解汇总
Web Service 元数据注释 @WebService 1.serviceName: 对外发布的服务名,指定 Web Service 的服务名称:wsdl:service.缺省值为 Java 类的 ...
- 代码图片转文本--阿里VS度娘
最近看vue的书,居然没有提供源代码,一堆的CSS真不想手工录入,于是用手机找APP去转.发现广告普遍,于是找找网上相关的API,结果百度和阿里都有在线的API提供,于是好奇其能力如何.如于用以下两图 ...
- cookie httpOnly 打勾
在 chrome dev tools 中,通过 Application -> Cookies 可以查看 cookie. 其中有一列表头为`HTTP`,如果其下打勾了,则表明 httpOnly. ...