docekr环境部署mysql、kafaka和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容器的配置文件目录和数据目录进行挂载,上面没有挂载目录
docker run -p 33306:3306 --name mysql -v v $PWD/conf:/etc/mysql/conf.d -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

1、拉取zookeeper和kafka镜像(zookeeper是kafka的依赖)

docker pull wurstmeister/zookeeper

docker pull wurstmeister/kafka


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

三、docker环境部署mongodb

1、拉取mongodb最新镜像

docker pull mongo:latest

2、运行mongodb容器
docker run -d -p 27017:27017 -v /opt/mongo/data:/data/db mongo

3、使用studio 3T 连接mongodb测试

下一篇搭建docker私有registory

猜你喜欢

转载自www.cnblogs.com/wangchengyi/p/12141800.html