Apache Kafka in Docker on Windows.

##はじめに
Apache Kafka in Docker on Windows.を実際に試してみた

##参考URL
https://zablo.net/blog/post/setup-apache-kafka-in-docker-on-windows

##バージョン確認
``` 
> docker --version
Docker version 18.06.1-ce, build e68fc7a
```

``` 
> docker-compose version
docker-compose version 1.22.0, build f46880fe
docker-py version: 3.4.1a
CPython version: 3.6.6
OpenSSL version: OpenSSL 1.0.2o  27 Mar 2018
PS C:\Users\0ashi\work_kafka>
```
※Docker for Windowsのインストール　https://qiita.com/0ashina0/items/f8b960e822a40a6a2eed

##docker-compose.yml作成
####入手先
https://github.com/marrrcin/kafka-dockercompose/blob/master/docker-compose.yml
####編集
ipconfigで確認した```IPアドレス(例：192.175.12.5)```に変更する

```
ADVERTISED_HOST: kafkaserver    ⇒　192.175.12.5
```

##docker 起動
（コマンドは管理者PowerShellにて実行）
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/08cb17f2-b536-0adb-61d5-dfc70fad570d.png)

![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/67b5f1c2-c341-64eb-606a-5e958508270e.png)

##Starting the environment
####docker-compose.ymlファイルがあるフォルダーで実行
```
docker-compose up
```

####別Windowsにて起動確認

```
> docker-compose ps
指定されたパスが見つかりません。
    Name               Command            State                       Ports
------------------------------------------------------------------------------------------------
kafka          supervisord -n             Up      0.0.0.0:2181->2181/tcp, 0.0.0.0:9092->9092/tcp
kafkamanager   ./start-kafka-manager.sh   Up      0.0.0.0:9000->9000/tcp
>
```
「指定されたパスが見つかりません。」と表示されるが影響ないらしい。

##Kafka マネージャを起動し、Cluster、Topicを作成する
http://localhost:9000
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/ebd328e7-9b6d-3bb9-e475-e1600ea198ee.png)

・Add Cluster
Cluster　-> Add Cluster
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/b3e51e80-4679-7c50-e3dc-de3f4a2bfa0e.png)

Cluster Name : KafkaCluster 
Cluster Zookeeper Hosts : ```192.175.12.5```
Kafka Version : 0.10.1.0

![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/49a3c7c6-b91c-ae2c-7e8a-d8c415a5c9a9.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/451d3f15-5d43-4644-8afd-fc0d7ed836f4.png)

・Create Topic
Kafka ManagerのTop画面に戻り(ロゴをクリック)、追加したClusterのリンクをクリック
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/fde4a82b-be39-b8be-448f-11a0ac3d8e73.png)

Topic　-> Create
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/7652caa7-8c0e-1b99-77ae-5aba9e876761.png)

Topic : Kafka_test_topic
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/adc31baf-0539-fabd-0ed0-2ed711683f65.png)

##kafka download
https://kafka.apache.org/downloads
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/e31e1f0e-bea3-b853-ade9-52556701249d.png)

ダウンロードファイルの解凍
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/69fbcd53-1cdd-3ac8-8453-606eca4c194f.png)

##producer起動
 .\kafka-console-producer.bat --broker-list localhost:9092 --topic kafka_test_topic
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/eae62a6e-d0c5-9781-d249-8e0136cc628e.png)

##consumer起動
.\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic kafka_test_topic
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/3961b854-0cb3-c48c-a846-14841fd68a0c.png)


##producerからメッセージ送信
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/14f2e5a0-bd68-3555-392e-6facf8f7c66f.png)

##consumerでメッセージ確認
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/3e9652d8-be97-9d7e-3476-81866912bf6b.png)

##docker-compose down
####docker-compose.ymlファイルがあるフォルダーで実行
![image.png](https://qiita-image-store.s3.amazonaws.com/0/214982/a4dca81a-4507-9d49-6ee6-937a99218ed9.png)