docker创建redis mysql 等服务

一点感想

我觉得docker是个很牛逼的东西,牛逼在哪里?

首先不说,未来的服务部署的问题,从gitlab代码合并--》Jenkins集成--》k8s服务自动编排,这些自动化的东西很可能是未来的趋势。

上面的太远了,和我没有多大的 关系。

但是安装启动一个redis(mysql)等服务,极其简单。

docker安装访问redis

docker run -d -p 6379:6379 --name=myredis redis

docker exec -it a6703778cfa0 /bin/bash

(在windows上用RedisDesktopManager测试通过)

 docker安装访问mariadb

(本来准备像上面一样两行命令搞定,但是报错,参考文档https://www.cnblogs.com/keepMoveForevery/p/12205827.html

mkdir -p /data/mariadb/data

docker run -d -p 3306:3306 --name=mymysql -e MYSQL_ROOT_PASSWORD=root -v /data/mariadb/data:/var/lib/mysql  mariadb

(和上面启动两点不同:1,设置mysql密码 2,和宿主机绑定存储卷)

 docker exec -it mymysql /bin/bash

(在navicat上用RedisDesktopManager测试通过)

docker安装访问kafka和zookeeper

(下载镜像,直接下载kafka,会报错XXdocker loginXX)

docker pull wurstmeister/kafka
docker pull wurstmeister/zookeeper

(启动kafka容器,zookeeper容器)

参考:https://blog.csdn.net/belonghuang157405/article/details/82149257?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

docker run -d -p 2181:2181 --name=myzookeeper -e ZOO_MY_ID=1 -e ZOO_SERVERS='server.1=myhost:3888' --net=host wurstmeister/zookeeper

docker run -d -p 9092:9092 --name=mykafka --env KAFKA_ADVERTISED_HOST_NAME=localhost -e KAFKA_ZOOKEEPER_CONNECT=myhost:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://myhost:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -e KAFKA_HEAP_OPTS="-Xmx256M -Xms128M" --net=host wurstmeister/kafka

(myhost是我服务器的ip)

参数说明:--link是为了连上zookeeper的网络(这个很恶心,因为程序老是报错)

     --net=host 意思是用宿主机的通讯方式(不会存在通讯问题,搞了几个小时,才通过上面方法,解决问题)

     --env是设置参数(进入容器,直接输入env,可以看到我们设置的参数) 

     (测试,强烈介意用代码来测试,命令测试很恶心)

进入bin目录
/opt/kafka_2.12-2.4.1/bin
创建topic
kafka-topics.sh --create --zookeeper myzookeeper:2181 --replication-factor 1 --partitions 1 --topic mytopic
生产者,消费者
kafka-console-producer.sh --broker-list localhost:9092 --topic mytopic
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic mytopic --from-beginning

待续

后续想测试什么中间件的功能在这里补充

记录开放的端口

查看端口监听命令: netstat -ant | grep 9092
查看端口被那个进程占用了:lsof -i:9092 (yum install lsof)

8080/8080 tomcat
80/80
9092/9092 kafka
2181/2181 zookeeper
6379/6379  redis
5601/5601 kibana
9200/9200 elasticsearch
3306/3306 mysql
8000/8000
3389/3389
22/22 ssh链接

8080/8080
原文地址:https://www.cnblogs.com/windy13/p/12616323.html