○Apache NiFiの画面
○構築方法
以下の手順で、Apache NiF i.7.1とMySQL 5.7のコンテナを構築・実行します。
1. Apache NiFi公式にMySQL JDBCドライバを追加したイメージの作成(Dockerfileがあるフォルダで実行)
docker build -t nifi171mysql .
Dockerfile
FROM apache/nifi:1.7.1
USER root
RUN wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.12.tar.gz -P /tmp \
&& tar xvfz /tmp/mysql-connector-java-8.0.12.tar.gz -C /tmp \
&& cp /tmp/mysql-connector-java-8.0.12/mysql-connector-java-8.0.12.jar /usr/share/java \
&& rm -Rf /tmp/mysql-connector*
USER nifi
VOLUME /opt/nifi
2. Apache NiFiとMySQLコンテナの構築・実行(docker-compose.ymlがあるフォルダで実行)
COMPOSE_HTTP_TIMEOUT=180 docker-compose up -d
docker-compose.yml
version: "2"
services:
db:
image: mysql:5.7
command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
container_name: "nifi-db"
volumes:
- "nifidb-data:/var/lib/mysql"
ports:
- "3306:3306"
environment:
MYSQL_DATABASE: nifi
MYSQL_ROOT_PASSWORD: nifi
nifi171mysql:
image: nifi171mysql
container_name: "nifi171mysql"
volumes:
- "nifi-data:/opt/nifi"
ports:
- "8080:8080"
depends_on:
- db
volumes:
nifidb-data:
driver: local
nifi-data:
driver: local
3.ブラウザから以下のURLにアクセス
http://<Dockerホスト名またはIP>:8080/nifi/
※DBへの接続
DBCPConnectionPoolで、以下のようにパラメータを設定してローカルのPostgreSQLにアクセスします。
Database Connection -> URL jdbc:mysql://db:5432/nifi
Database Driver Class Name -> com.mysql.jdbc.Driver
Database Driver Location(s) -> /usr/share/java/mysql-connector-java-8.0.12.jar
Database User -> root
Password -> nifi
○関連情報
・Apache NiFiに関する他の記事はこちらを参照してください。
0 件のコメント:
コメントを投稿