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

基于docker安装MySQL、RabbitMQ、ElasticSearch、minio

MySQL

拉取镜像

docker pull mysql:5.7

进入到/usr/mysql/conf目录下

cd /usr/mysql/conf

创建文件

vi my.cnf

插入以下内容

[client] default_character_set=utf8 [mysqld] collation_server = utf8_general_ci character_set_server = utf8

保存退出

在该目录(/usr/mysql/conf)下创建两个文件夹,在启动容器时会用到

mkdir conf.d mysql.conf.d

运行MySQL

docker run -d -p 3307:3306 --name mysql -v /usr/mysql/log:/var/log/mysql -v /usr/mysql/data:/var/lib/mysql -v /usr/mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root mysql:5.7

上述命令的含义:
docker run:在docker中启动一个容器实例
-d:该容器在后台运行
-p 3307:3306:容器与主机映射端口为, 3307(主机端口,即外部连接mysql使用的端口号): 3306(容器端口)
--name mysql:容器运行后的名称
-v /usr/mysql/log:/var/log/mysql:将容器/var/log/mysql目录下的数据,备份到主机的 /usr/mysql/log目录下
-v /usr/mysql/data:/var/lib/mysql:将容器/var/lib/mysql目录下的数据,备份到主机的 /usr/mysql/data目录下
-v /usr/mysql/conf:/etc/mysql:将容器/etc/mysql目录下的数据,备份到主机的 /usr/mysql/conf目录下
-e MYSQL_ROOT_PASSWORD=root:设置当前mysql实例的密码为root
mysql:5.7:需要运行的容器名称以及版本号

开放端口

firewall-cmd --zone=public --add-port=3307/tcp --permanent systemctl restart firewalld.service

在Windows中通过通过Navicat或者小海豚连接数据库看是否能连接成功

完…

RabbitMQ

拉取镜像

docker pull rabbitmq

启动容器

docker run -d -p 5672:5672 -p 15672:15672 --name rabbit rabbitmq

进入容器

docker exec -it rabbit bash

创建管理员账号

rabbitmqctl add_user admin admin rabbitmqctl set_user_tags admin administrator

安装web支持

rabbitmq-plugins enable rabbitmq_management

退出容器

exit

开放端口

firewall-cmd --zone=public --add-port=5672/tcp --permanent firewall-cmd --zone=public --add-port=15672/tcp --permanent sudo service firewalld restart

Windows浏览器访问rabbitmq

安装延迟插件

将延迟插件上传到Linux任意目录下

将插件拷贝到容器的plugins目录下

docker cp rabbitmq_delayed_message_exchange-3.9.0.ez rabbit:/plugins

进入容器

docker exec -it rabbit bash

进入plugins目录

执行安装插件

rabbitmq-plugins enable rabbitmq_delayed_message_exchange

查看安装好的插件

rabbitmq-plugins list

ElasticSearch

拉取镜像

docker pull elasticsearch:7.7.0

运行容器

docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.7.0

开启Linux的9200端口

firewall-cmd --zone=public --add-port=9200/tcp --permanent systemctl restart firewalld.service

Windows浏览器上访问虚拟机9200端口,得到以下返回信息表示安装成功

安装IK分词器

elasticsearch-analysis-ik-7.7.0.zip上传到Linux任意位置

将压缩包复制到容器中的插件目录中

docker cp elasticsearch-analysis-ik-7.7.0.zip elasticsearch:/usr/share/elasticsearch/plugins

进入到ElasticSearch容器中

docker exec -it 容器ID bash

然后再进入到plugins目录中可以看到IK压缩包

在该目录下创建一个新目录,取名为ik

将elasticsearch-analysis-ik-7.7.0.zip解压到ik目录中

unzip elasticsearch-analysis-ik-7.7.0.zip -d ik

删除elasticsearch-analysis-ik-7.7.0.zip压缩包

rm -f elasticsearch-analysis-ik-7.7.0.zip

退出容器

exit

最后再重新启动elasticsearch容器就行了

docker restart elasticsearch

安装kibana

拉取镜像

docker pull kibana:7.7.0

启动容器

docker run --name kibana -e ELASTICSEARCH_HOSTS=http://自己的elasticsearchIP地址:9200 -p 5601:5601 -d kibana:7.7.0

进入kibana容器

docker exec -it kibana bash

进入容器中找到/usr/share/kibana/config/kibana.yml

vi /usr/share/kibana/config/kibana.yml

将如下内容写到kibana.yml中,然后保存退出::wq

# 指定ES的ip地址和端口号 elasticsearch.hosts: [ "http://192.168.174.130:9200" ] # 中文显示 i18n.locale: zh-CN

退出容器再重启

exit
docker restart kibana

开启Linux5601端口

firewall-cmd --zone=public --add-port=5601/tcp --permanent systemctl restart firewalld.service

在Windows的浏览器访问kibana

minio

1.拉取minio镜像
docker pull minio/minio
2.启动minio服务
docker run -p 9090:9000 -p 9001:9001 --name minio \ -v /mydata/minio/data:/data \ -e MINIO_ROOT_USER=minioadmin \ -e MINIO_ROOT_PASSWORD=minioadmin \ -d minio/minio server /data --console-address ":9001"
3.访问minio页面
运行成功后就可访问MinIO Console的管理界面了, 账号:minioadmin 密码:minioadmin 例如: http://192.168.137.129:9090
http://www.jsqmd.com/news/694092/

相关文章:

  • 抖音批量下载终极指南:开源工具轻松搞定视频素材收集
  • Rust 所有权模型与借用系统详解
  • 江科大STM32实战笔记精讲『上篇』
  • 从手动点到自动读:Opc Quick Client + 代码片段,快速验证你的OPC DA客户端程序
  • Windows 11 LTSC 24H2一键恢复微软商店:完整实用指南
  • tshark + tcpdump 入门实战笔记:从网站分析到 DDoS 模拟
  • Oracle EBS(Oracle E-Business Suite)是 Oracle 公司推出的一套集成化企业资源计划(ERP)解决方案,其应用架构围绕 “集成性”“模块化” 和 “可扩展性” 设
  • 抖音视频批量下载终极指南:开源神器让无水印收藏变得如此简单
  • R语言实战:从summary()函数看数据探索的起点
  • Spring Boot开发中,@RequestParam、@RequestBody、@PathVariable到底怎么选?一个真实项目案例讲清楚
  • 电话号码精确定位系统:3分钟搭建免费查询平台的完整指南
  • 从标准库到HAL库:手把手教你魔改淘宝1.3寸TFT屏例程,并用STM32CubeMX快速配置SPI驱动
  • Matlab fmincon实战:从Rosenbrock函数到带圆域约束,手把手教你搞定非线性优化
  • 财务造假退市后东方通能否重生?17亿资金、30年积淀成关键砝码
  • 2026 年临沂企业管理咨询公司权威推荐
  • 告别外置变压器!手把手教你用B64843HC打造更紧凑的无人机飞控总线
  • 路由策略实战:双点双向重发布场景下的OSPF与ISIS防环与选优
  • imFile下载管理器:如何实现高效的多协议下载管理?
  • 【CTR预估技术演进】从FM到DeepFM:因子分解机家族的原理、演进与实战
  • 告别PWM纹波!用Arduino UNO和MCP4725 DAC模块实现精准电压输出(附校准教程)
  • 别光看简介了!手把手带你用LVGL 8.3在ESP32上跑起来第一个UI
  • Keras模型预测全流程详解与优化实践
  • real-anime-z开源模型部署案例:GPU算力优化的动漫风图片生成方案
  • 手把手教你用C语言内嵌汇编调用CPUID指令,获取CPU型号、品牌和地址位数
  • 手把手教你用DSP28335的定时器中断实现增量式PID控制(附完整代码)
  • OpenWebUI 接入 Claude API
  • 别再死记硬背了!Halcon仿射变换核心算子vector_to_hom_mat2d与vector_angle_to_rigid的保姆级区别与实战选择指南
  • Elsevier Tracker:学术投稿效率神器终极指南
  • Elasticsearch核心精讲:Index索引详解与全生命周期管理实战
  • 华为交换机sFlow配置避坑指南:Agent IP选错、采样率设多少?一次讲清