Docker笔记:Docker中简单配置Mysql/Redis/Mongodb容器

docker安装mysql、redis、nginx 生成容器,此时生成容器主要是用于复制配置文件# 将容器nginx.conf文件复制到宿主机# 将容器conf.d文件夹下内容复制到宿主机# 将容器中的html文件夹复制到宿主机。 阅读详情

Docker 配置 Mysql 容器

1 )方案1:基于centos等linux操作系统

  • 启动centos镜像,在里面安装 mysql
  • 这样比较麻烦,配置的东西很多 …

2 )方案2:直接用 mysql 镜像 (推荐)

  • $ docker pull mysql 下载镜像
  • $ docker run -itd --name my_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=my-pass-xxx-xx mysql
  • $ docker ps 找到容器id
  • $ docker exec -it 容器id /bin/bash 这样来连接上mysql, 这里容器id
    • $ mysql -u root -p
  • 之后使用客户端来连接上容器的mysql服务
    • 使用 服务器物理机 ip和端口
    • 测试,连接成功
  • 实现mysql的数据存放到本地
    • 配置文件 存放到物理机 /root/mysql/conf.d
    • 数据文件 存放到物理机 /root/mysql/data
  • 停止之前的容器,重新配置启动:
    • $ docker run -itd --name my_mysql2 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /root/mysql/conf.d:/etc/mysql/conf.d -v /root/mysql/data:/var/lib/mysql mysql
  • 可以测试物理机和容器内的数据同步情况,测试正常

Docker 配置 Redis 容器

  • $ docker pull redis 下载redis镜像
  • $ docker run -itd --name redis-test -p 6379:6379 redis 启动redis容器
  • $ docker ps 查看当前redis
  • $ docker exec -it 容器id /bin/bash
    • $ redis-cli 可以连接上 redis
  • ip addr 拿到到物理机的ip之后,在客户端连接redis
    • $ redis-cli -h xxx.xxx.xxx.xxx -p 6379
    • 连接成功
  • 安全问题,需要授权
    • 启动时需配置密码
  • $ docker run -itd --name redis2 -p 6378:6379 redis --requirepass "123456"
    • 连接 $ redis-cli
    • 直接set测试 $ set u wang, 提示 NOAUTH Authentication required.
      • $ auth 123456
    • 这样就可以set了
  • 客户端能正常连接了

Docker 配置 Mongodb 容器

  • $ docker pull mongo

  • $ docker run -itd --name mymongo -p 27017:27017 -v /root/mongo/data:/data/db mongo

  • $ docker ps 获取 mymongo 容器id

  • $ docker exec -it mymongo /bin/bash

    • $ mongo 链接 mongo 数据库
    • $ show dbs 查看现有数据库
    • $ use myowndb 创建自己的数据库
    • $ db.user.insert({username:'wang'}) 这样,在 myowndb 数据库中创建了user表,并插入了一条数据
    • $ show collections 看到目前的 user 集合(表)
    • $ show dbs 可看到多了 myowndb 的数据库
    • $ db.user.find({}) 查看 user 表中所有数据
  • 在物理机上 $ ip addr 获取ip地址

  • 在客户端上 连接 $ mongo xxx.xxx.xxx.xx:27017

    • $ show dbs
    • $ show collections
    • 正常连接
  • 测试数据持久化

    • $ docker inspect 容器id | grep mongo 查看对应映射关系
    • 销毁之前容器,创建新容器
    • 测试正常,数据都在
  • mongo密码问题

    docker run -d --name authMongo \
        -e MONGO_INITDB_ROOT_USERNAME=admin \
        -e MONGO_INITDB_ROOT_PASSWORD=123456 \
        -p 27017:27017
        -v /root/mongo/data:/data/db \
        mongo --auth
    
  • 两个变量MONGO_INITDB_ROOT_USERNAME 和 MONGO_INITDB_ROOT_PASSWORD结合起来使用来传递环境变量,配置账户密码

  • 创建账户,进行授权

    db.createUser({
      user: 'wang',
      pwd: '123456',
      roles: [
        {
          role: 'userAdminAnyDatabase',
          db: 'admin'
        },
        "readWriteAnyDatabase"
      ],
    })
    
  • 创建一个新用户并设置该用户的密码

  • 该用户是在 admin 身份验证数据库中创建的,并被赋予角色, 这是一个"超级用户"角色

  • $ docker exec -it authMongo /bin/bash

    • $ mongo$
    • $ show dbs$ 发现看不到数据了
    • $ db.auth('wang', '123456') 发现没法授权
  • 开始正确鉴权连接

    • $ mongo admin 连接admin数据库
    • $ db.auth('wang', '123456')
    • $ show dbs 这样就能看到了,说明鉴权成功了
  • 在客户端连接docker容器的mongo服务

    • $ mongo xxx.xxx.xxx.xxx:27017/admin
      • admin 是数据库,可以指定任意数据库
    • $ db.auth('wang', '123456') 这里是账户和密码
    • $ show dbs 发现有数据,正常连接
Docker 环境搭建与三大数据库(MySQL/Redis/MongoDB)部署教程 Docker 是一个开源的容器化平台,它可以帮助开发者打包、分发和运行应用程序以及其依赖项。通过使用 Docker,开发者可以将应用程序及其环境打包成一个称为容器的独立单元,使应用程序在不同的环境中具备一致的运行行为。优点:1.轻量和快速启动:Docker 容器与传统虚拟机相比,更加轻量级,因为它们共享主机操作系统的内核。这使得容器的启动和停止速度更快,可以在几秒钟内完成。2.环境一致性:Docker 容器包含了应用程序及其所有的依赖项,包括操作系统、库文件和其他软件。 阅读详情

相关推荐

linux centos docker mysql redis mongodb rabbitmq 安装配置 基本使用

要求 Docker支持以下的CentOS版本: CentOS 7(64位) CentOS 6.5(64位)或更高的版本 Docker要求CentOS系统的内核版本高于3.10,查看本页面的前提条件来验证你的CentOS版本是否支持做cker。 通过uname -r命令查看你当前的内核版本 以下蓝色字体为需要执行执行命令 我用的系统未centOS 7.1如果是最新版centos 请看我的另外一篇...

qq_34874784的博客 707

关于docker中mysql的配置文件

docker中的mysql配置文件挂载总是失效?

nreg 4559

NHANES数据库实战:数据合并与加权分析技巧

本文详细解析了NHANES数据库实战中的核心技巧,重点阐述了数据合并与加权分析的正确方法。通过两个具体案例,手把手指导如何从数据下载、合并、权重计算到使用R语言survey包进行加权统计分析,避免因忽略复杂抽样设计而导致的研究偏倚,确保分析结果的准确性与可发表性。

weixin_29057065的博客 585

docker 安装的mysql修改配置文件

docker 安装的mysql修改配置文件

8522

液态神经网络系列(四) | 一条 PyTorch 从零搭建 LTC 细胞

本文详细介绍了如何从零开始用PyTorch实现Liquid Time-constant Networks(LTC)神经元模型。首先将LTC的核心微分方程拆解为输入电导、系统时间常数和数值积分器三个模块,然后逐步构建LTCCell类,包括物理参数初始化、突触参数设置和前向演化过程。文章还展示了如何封装LTCModel处理不规则时间序列,并通过正弦波抗干扰实验验证了LTC模型的优越性。最后讨论了数值稳定性、计算代价等实现细节,并预告了下一篇将探讨使用伴随灵敏度算法优化显存占用的方法。

wyj333333的博客 2071

地磁场仿真与导航方案设计

地磁场仿真与导航方案设计 地磁场作为地球的固有资源,为航空、航天、航海提供了天然的坐标,可应用于航天器、航空飞行器和舰船等载体的定位、定向及姿态控制。本文依据地磁场的球谐模型,利用Matlab工具,设计了计算任意地点地磁场的程序,对仿真结果与实际数据进行对比分析;并选定一组卫星的数据,结合卫星的运动轨道,描绘90分钟内卫星处地磁总强度/矢量随轨道变化曲线,据此设计一种卫星地磁导航方案。 一、地磁场计算原理 1.1.球谐模型与球谐系数 地磁学的基本问题之一就是用数学表达式将地磁要素的地面分布表示成地理坐标的函

PRQKKK的博客 7410

Docker套件之Mysql服务配置

群晖Nas服务器中安装Mysql数据库

小坏蛋的博客 3783

PCL 基于强度的双边滤波【2026最新版】

基于强度信息的双边滤波代码实现、滤波前后点云未出现变化的原因以及获取带有强度pcd点云的方法。本文由优快云点云侠原创,博客长期更新,本文最近一次更新时间为:2026年5月24日。

点云侠的博客 29万+

Docker中配置MySql环境

Docker中配置MySql环境

weixin_46759354的博客 5176

CAPL学习之路-关键字

在capl中,关键字具有特殊的含义和用途,因此,不得将关键字用作变量或函数的名称 声明数据类型的关键字 可以用不同的关键字,声明或引用不同类型的数据 byte 声明一个字节的变量 word 声明两个字节的变量 dword 声明四个字节的变量 int 声明两个字节的整数 long 声明四个字节的变量 qword 声明八个字节的变量 char 声明一个字符串 float 声明一个浮点数,8个字节 double 声明一个浮点数,8个字节 定义一个结构体或枚举类型 struct struct Data { .

jasonj333 6109

手把手教您 Claude 桌面端无需账号订阅,免费接入国产自定义大模型(Claude Desktop 绕过订阅限制,接入任意自定义 AI 模型)

无需官方账号,也能畅玩Claude桌面端!本文详解Claude Desktop如何跳过登入接入自定义大模型,轻松解锁Cowork、Code等强大功能🚀

XiaoqiangClub的博客 5418

docker安装mongoDB及使用

docker安装mongo以及mongoDB的简单使用

packge的博客 4万+

电化学-NanoStat-开源系统的使用说明

本文主要介绍了NanoStat开源系统的使用方法,从硬件打板、设备组装、软件安装3个层次进行了详细说明。整个流程根据作者提供的视频能够很好的完成,不需要太多的技术,对刚入门的新手是一个不错的练手项目。其次软件还有很大的优化空间,能够进一步提高系统的精度,对之后类似恒电位仪系统的开发也有很大的借鉴意义。

分享技术笔记,希望对大家能够有一定的帮助,同时也通过归纳总结提升自己的个人能力。 2005

Docker 容器(redis、mongodb、mysql等)

Docker下载地址 [ https://download.docker.com/win/stable/Docker%20Desktop%20Installer.exe ] 一、创建/启动 redis 容器 CMD: docker run --name redis -p 6379:6379 -v d:/docker/redis/redis.conf:/etc/redis/redis.conf...

CBH 272

STM32CubeMX之DAC产成正弦波

“在之前的文章中曾经介绍过用TIM产生PWM做DAC用,STM32定时器输出PWM做DAC。部分型号的STM32单片机内部有专用的DAC,本篇文章将介绍如何用内部DAC+DMA产生正弦波...

zhang062061的专栏 1513

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

初识Docker,大白话理解Docker。Docker Windows Desktop的安装以及阿里云镜像加速。在Docker中运行Redis、MongoDB、MySQL

本文介绍了什么是Docker,介绍了Docker中的一些核心概念,并用通俗的语言讲述了Docker的作用。然后,介绍了Docker的安装以及如何在Docker中运行相应程序。本文介绍了如何在Docker中运行redis,如何运行MongoDB,如何在服务器的Docker中安装MySQL并实现远程连接。

ZhaoSimonone的博客 5944

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Docker-compose配置Mysql,Redis,MongoDB

Docker-compose下配置Mysql,Redis,MongoDB详解一、docker-compose简介二、构建一个实例项目1.前后端实现2.Dockerfile及docker-compose.yml3. 生成镜像三、实例程序源码 一、docker-compose简介 Compose是用于定义和运行多容器Docker应用程序的工具。通过Compose,您可以使用YAML文件来配置应用程序的服务。然后,使用一个命令,就可以从配置中创建并启动所有服务。 使用Compose基本上是一个三步过程: 使用D

koooooooo5的博客 1254

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Docker容器启动Redis,MongoDB,MySQL,Nginx

仅做记录之用,详细的操作方法可以查看https://hub.docker.com/ Redis的启动方式: 最简单的启动方式,最好还是带个端口映射 sudo docker run --name some-redis -d redis redis-server --appendonly yes 自定义配置文件的启动方式 sudo docker run -v /home/jav...

master_JP的博客 702

离线安装docker,docker安装MySQL,Redis,ES,Kibana,mongoDB,RocketMQ

elasticSearch,kibana有众多版本我们可以登陆DockerHUb官网查看,下载我们需要的版本。 一、安装ElasticSearch 拉取镜像,我这里下载的是7.13.1版本。 ​ docker pull elasticsearch:7.13.1 //输入 docker imaegs可以查看自己拉取过的所有镜像 REPOSITORY TAG IMAGE ID CREATED SIZE ren late

qq_49059667的博客 1908

服务器部署环境(docker安装Mysql + Redis + MongoDB)

#Linux docker 部署mysql、redis、mongoDB

qq_46703281的博客 1934

使用docker创建多种数据库容器的方法:mysql, redis, mongodb, neo4j

通过本文,您已经学习了如何使用 Docker 快速部署和管理多种数据库。这些命令和代码示例不仅易于执行,而且具有很高的可复用性。Docker 的灵活性和便捷性意味着您可以将这些知识应用到各种不同的项目和环境中,大大提高您的工作效率。 希望这篇文章能帮助您更好地理解 Docker 在数据库管理方面的实用性,并鼓励您在未来的工作中尝试和应用这些方法。

m0_51661400的博客 1011

[Docker]四.Docker部署nodejs项目,部署Mysql,部署Redis,部署Mongodb

Docker部署nodejs项目,部署Mysql,部署Redis,部署Mongodb

资深系统架构,深耕高并发研发与 AI 大模型工程化落地。技术栈以 Python (AI/NLP/RAG/Agent) 与 Golang (高并发架构) 为双核心,兼具 PHP 大型应用经验。专注算法落地、复杂系统设计及团队技术赋能 6600

Docker 系列(二十八):使用 Docker 实现本地开发环境 - Redis、MongoDB、MySQL 等服务

通过 Docker,我们可以快速配置和运行 Redis、MongoDB 和 MySQL 等数据库和缓存服务。这种方法不仅提高了开发效率,还使本地开发环境保持一致性,便于团队成员的协作。利用 Docker Compose,可以轻松管理多个服务,节省了环境配置和管理的时间与精力。,可以快速搭建统一、独立且灵活的开发环境,避免安装、版本冲突等问题。:可以使用 MySQL 客户端工具或任何兼容的数据库管理工具连接。要测试连接,可以使用 MongoDB 的命令行工具。本地开发环境是项目开发、测试和调试的基础。

一名热衷于技术的全栈开发者,专注于前端与后端的全面技术探索。在这里,我将分享我在技术领域的学习与成长,助力更多开发者的进步。 1071

Docker容器的启动

一、Docker安装Nginx 1、Docker上启动nginx 使用docker 下载nginx 镜像 docker pull nginx nginx@nginx:~$ docker pull nginx Using default tag: latest latest: Pulling from library/nginx c499e6d256d6: Pull complete 74...

fbbqt的博客 2万+

NoDock数据库配置:MySQL、MongoDB与Redis的最佳实践

NoDock是一个专为Node.js项目设计的Docker Compose解决方案,集成了MySQL、MongoDB、Redis等主流数据库服务。本文将详细介绍如何在NoDock环境中配置和优化这三种数据库,帮助新手用户快速搭建稳定高效的开发环境。 [![NoDock数据库架构图](https://raw.gitcode.com/gh_mirrors/no/nodock/raw/16c89cdb

gitblog_00428的博客 721

Docker常用中间件部署笔记:MongoDB、Redis、MySQL、Tomcat快速搭建

记录日常开发中常用中间件的 Docker 部署命令、用户配置及问题解决技巧,所有命令均经过实际验证,替换了隐私信息(如原用户名、自定义路径),可直接修改适配自身环境。

这里是一位在代码世界深耕多年的 “老江湖” 的自留地。​ 岁月在履历上添了厚度,却没磨掉敲代码时眼里的光。从调试第一行 hello world 的生涩,到架构复杂系统的从容,那些在键盘敲击声里流过的日夜,都想在这里慢慢梳理 987
上一篇: Vue3源码梳理:设计一个微型Vue的源码框架环境
下一篇: Docker笔记:关于Dockerfile及构建镜像
Wang's Blog
博客等级 码龄12年 7433粉丝 2421原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wang's Blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值