docekr环境部署mysql、kafaka、kafka-manager和mongodb
一、docker环境部署mysql###
1、拉取mysql最新镜像
docker pull mysql:latest
2、运行mysql容器
docker run -p 33306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql
3、可以使用docker -v 将mysql容器的配置文件目录和数据目录进行挂载,上面没有挂载目录(需要先启动下容器将配置文件cp至/etc/mysql目录下)
docker run -p 33306:3306 --restart=always --name mysql -v $PWD/conf:/etc/mysql -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql
-
-p 33306:3306:将容器的 3306 端口映射到主机的 33306 端口。
-
-v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。
-
-v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。
-
-v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。
-
-e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。
4、使用navicat连接测试
二、docker环境部署kafka、kafka-manager###
1、拉取zookeeper和kafka、kafka-manager镜像(zookeeper是kafka的依赖)
docker pull wurstmeister/zookeeper
docker pull wurstmeister/kafka
docker pull solsson/kafka-manager:latest
2、运行zookeeper和kafka容器
docker run --name zookeeper -d -p 2181:2181 wurstmeister/zookeeper
docker run --name kafka -p 9092:9092 -e KAFKA_ZOOKEEPER_CONNECT=192.168.8.88:2181 -e ALLOW_PLAINTEXT_LISTENER=yes -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -d wurstmeister/kafka
- KAFKA_ZOOKEEPER_CONNECT 指定 zookeeper 的地址:端口。
- ALLOW_PLAINTEXT_LISTENER 允许使用PLAINTEXT侦听器。
- KAFKA_ADVERTISED_LISTENERS 是指向Kafka代理的可用地址列表。 Kafka将在初次连接时将它们发送给客户。格式为 PLAINTEXT://host:port ,此处已将容器9092端口映射到宿主机9092端口,所以host指定为localhost,便可在宿主机执行测试程序连接 kafka。
- KAFKA_LISTENERS 是 Kafka 代理将侦听传入连接的地址列表。格式为 PLAINTEXT://host:port , 0.0.0.0代表接受所有地址。设置了上个变量就要设置此变量。
3、测试发送和接受消息
docker exec -it kafka bash
cd /opt/kafka_2.12-2.4.0/bin
创建一个topic:
./kafka-topics.sh --bootstrap-server localhost:9092 --create --replication-factor 1 --partitions 1 --topic mykafka
查看 topic 列表
./kafka-topics.sh --bootstrap-server localhost:9092 --list
查看指定 topic 相关信息
./kafka-topics.sh --describe --bootstrap-server localhost:9092 --topic mykafka
指定 topic 发送消息
./kafka-console-producer.sh --broker-list localhost:9092 --topic mykafka
消费消息
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --from-beginning --topic mykafka
4、部署kafka-manager管理工具
docker run -d --name kafka-manager \
--link zookeeper:zookeeper \
--link kafka:kafka -p 9001:9000 \
--restart=always \
--env ZK_HOSTS=zookeeper:2181 solsson/kafka-manager
部署成功的效果图
三、docker环境部署mongodb###
1、拉取mongodb最新镜像
docker pull mongo:latest
2、运行mongodb容器
docker run --name mongodb -d -p 27017:27017 -v /opt/mongo/data:/data/db mongo
3、使用studio 3T 连接mongodb测试
下一篇搭建docker私有registory(harbor)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本