docker-compose的安装,kafka用docker-compose部署,docker和docker-compose的区别

17 篇文章 0 订阅
1 篇文章 0 订阅

第一步:安装docker-compose

1.从github上下载docker-compose二进制文件安装

下载最新版的docker-compose文件

sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

添加可执行权限

sudo chmod +x /usr/local/bin/docker-compose

测试安装结果

docker-compose --version 
docker-compose version 1.16.1, build 1719ceb

2-pip安装

sudo pip install docker-compose

第二步:用docker-compose部署kafka

docker-compose.yml如下:
复制进ubuntu的时候可能会换行错位,可以用nano替换vim
然后ctrl w + ctrl o

查找哪个docker镜像(分支)
docker search 镜像名
version: '2'
services:
  zookeeper:
  	restart: always
    image: wurstmeister/zookeeper	#可以换用zookeeper分支,这里的image类似git的分支
    volumes:
      - $PWD/data:/data
    ports:
      - "2181:2181"
       
  kafka:
    image: wurstmeister/kafka
    restart: always
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: 106.14.172.1    #一般配本机内网ip
      KAFKA_MESSAGE_MAX_BYTES: 2000000
      KAFKA_CREATE_TOPICS: "Topic1:1:3,Topic2:1:1:compact"	#初始化的topic
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
    volumes:
      - $PWD/kafka-logs:/kafka
      - /var/run/docker.sock:/var/run/docker.sock
 
  kafka-manager:
    image: sheepkiller/kafka-manager
    restart: always
    ports:
      - 9020:9000
    environment:
      ZK_HOSTS: zookeeper:2181

参数说明:

  • KAFKA_ADVERTISED_HOST_NAME:Docker宿主机IP(如果你要配置多个brokers,就不能设置为
    localhost 或 127.0.0.1)
  • KAFKA_MESSAGE_MAX_BYTES:kafka(message.max.bytes)
    会接收单个消息size的最大限制,默认值为1000000 , ≈1M
  • KAFKA_CREATE_TOPICS:初始创建的topics,可以不设置 环境变量./kafka-logs为防止容器销毁时消息数据丢失。
  • 容器kafka-manager为yahoo出可视化kafka WEB管理平台。

在docker-compose.yml所在目录下执行:

# 启动:
$ docker-compose up -d
 
# 增加更多Broker:
$ docker-compose scale kafka=3
 
# 合并:
$ docker-compose up --scale kafka=3

在docker容器启动后想查看kafka版本,可以
docker exec -it 容器id bash
进入opt目录下查看

在这里插入图片描述

看完了上面想要的内容那么来思考下docker和docker-compose的区别把

docker是一个供开发和运维人员开发,测试,部署和运行应用的容器平台。这种用linux container部署应用的方式叫容器化。

compose是一个用于运行和管理多个容器化应用的工具。

我们可以列出下列几项来进行二者对比:

  1. docker是自动化构建镜像,并启动镜像。 docker compose是自动化编排容器。

  2. docker是基于Dockerfile得到images,启动的时候是一个单独的container

  3. docker-compose是基于docker-compose.yml,通常启动的时候是一个服务,这个服务通常由多个container共同组成,并且端口,配置等由docker-compose定义好。

  4. 两者都需要安装,但是要使用docker-compose,必须已经安装docker

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值