docker搭建常见组件

         docker安装环境比较简单,docker一键启动和停止。

         docker安装consul   

         docker pull consul   //下载consul镜像

         export GoEnvironment=local   //选择consul的环境

         export ConsulUrl=http://127.0.0.1:8500  //指定Consu地址

         docker run -d --name=cs -p 8500:8500 consul agent -server -bootstrap  -ui -client 0.0.0.0   //启动consul   

         -d 启动容器后台运行,并返回ID;
         -p xxxx:aaa (port)把容器的aaa端口映射到宿主机的xxxx端口
         agent   Runs a Consul agent
         -server 代表以服务端的方式启动
         -boostrap 指定自己为leader,而不需要选举
         -ui 启动一个内置管理web界面
         -client 指定客户端可以访问的IP。设置为0.0.0.0 则任意访问,否则默认本机可以访问

         docker安装mysql

         docker pull mysql:5.7  //下载mysql镜像

         docker run --name mysql -d  -p 3306:3306  \
         -v /Users/xxx/mysql/data:/data \
         -v  /Users/xxx/mysql/conf/my.cnf:/etc/mysql/my.cnf  \
         -e MYSQL_ROOT_PASSWORD=123456   mysql:5.7     //启动mysql

         //配置到my.cnf
         [client]
         default-character-set=utf8mb4
         [mysql]
         default-character-set=utf8mb4

         [mysqld]
         datadir=/data
         character-set-server = utf8mb4
         collation-server = utf8mb4_unicode_ci
         init_connect='SET NAMES utf8mb4'
         default-storage-engine=INNODB

         docker安装redis

         docker pull  redis

         docker run -itd --name redis -p 6379:6379 redis

         -i 以交互模式运行容器,通常与 -t 同时使用
         -t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
         -d 后台运行容器,并返回容器ID

         docker安装zookeeper

         docker pull wurstmeister/zookeeper     //下载镜像
         docker run  -d --name zk -p 2181:2181 wurstmeister/zookeeper:latest   //启动zookeeper

         docker安装kafka

         docker pull wurstmeister/kafka

         docker run -d --name kafka -p 9092:9092 --link zk -e  \
         KAFKA_ZOOKEEPER_CONNECT=zk:2181 -e   \
         KAFKA_ADVERTISED_HOST_NAME=192.168.1.18 -e  \
         KAFKA_ADVERTISED_PORT=9092 -e  \
         KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.18:9092 -e  \
         KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -e KAFKA_BROKER_ID=0  \
         wurstmeister/kafka

         //测试kafka

        docker exec -it kafka /bin/bash
        cd opt/kafka_2.12-2.4.1

        ./bin/kafka-topics.sh --create --zookeeper 192.168.1.18:2181 --replication-factor 1 --partitions 1 --topic imsystemmsg

       //运行kafka生产者发送消息:
       bin/kafka-console-producer.sh --broker-list localhost:9092 --topic imsystemmsg

       发送消息
       > hello
      //运行kafka消费者接收消息
      bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic imsystemmsg --from-beginning
     ./bin/kafka-topics.sh --delete --zookeeper 192.168.1.11:2181 --topic imsystemmsg

 

         

你可能感兴趣的:(golang)