Docker Compose デプロイ
チュートリアル動画
重要
デプロイ中に環境セットアップやタスクの動作エラーなどが発生した場合は、qData データ基盤公式のトラブルシューティング動画集を確認することをおすすめします。
この動画シリーズでは、よくある問題の調査方法を説明し、タスク失敗、タスクの加えるや実行ができない、タスクインスタンスがないなどの典型的な場面を扱い、すばやく原因を特定して解決できるようにします。
はじめに
このガイドに向いている人
- qData に初めて触れ、機能をすばやく体験したい方
- 複雑な環境セットアップやフロントエンドのパッケージ作るに手間をかけたくない方
- 「ワンクリック起動」でプラットフォーム全体を手軽に体験したいユーザー
すぐに使える完全なデプロイパッケージを用意しています。内容は次のとおりです。
- ✅ フロントエンド静的アセット(パッケージ済みの
distフォルダー) - ✅ DolphinScheduler スケジューラー(加えるインストール不要)
- ✅ Hadoop 一式(HDFS + YARN)
- ✅ Spark 3.5.6(展開済み)
- ✅ 事前設定済み
.env環境変数ファイル - ✅ 完全なディレクトリ構成とイメージパッケージ(手動ダウンロード不要)
大量の依存関係を手動で入れたり、フロントエンドをビルドしたり、複雑な設定を行ったりする必要はありません。パッケージを展開してスクリプトを実行するだけで、ビッグデータ基盤全体と qData を起動できます。
未経験でも簡単に始められ、10分で qData を体験できます。
ステップ 1: Docker と Docker Compose をインストール
qData は Docker コンテナで動作するため、先に Docker と Docker Compose をインストールする必要があります。
- 推奨バージョン:
- Docker: ≥ v19.03
- Docker Compose: ≥ v2.20.2
Docker Desktop を直接ダウンロードしてインストールします。
インストール後、Docker Compose は自動的に含まれるため、加えるインストールは不要です。
デプロイパッケージにはオフラインインストールパッケージとインストールスクリプトが同梱されているため、そのまま実行できます。
# Docker インストールパッケージのディレクトリへ移動
cd ~/qData/docker-install
# Docker コンポーネントをインストール
sudo dpkg -i containerd.io_1.6.9-1_amd64.deb docker-ce_24.0.7-1~ubuntu.20.04~focal_amd64.deb docker-ce-cli_24.0.7-1~ubuntu.20.04~focal_amd64.deb docker-compose-plugin_2.6.0~ubuntu-focal_amd64.deb
# 現在のユーザーを docker グループへ加える(sudo なし利用は任意)
sudo usermod -aG docker $USER
newgrp docker
# インストールを確認
sudo docker -v
# 出力例: Docker version 24.0.7, build afdd5Docker Compose をインストールします。
# 実行権限を付与し、システムパスへ移動
sudo chmod +x docker-compose
sudo mv docker-compose /usr/local/bin/docker-compose
# インストールを確認
sudo docker-compose -v
# 出力例: Docker Compose version v2.20.2ステップ 2: デプロイパッケージのダウンロード先
🔗 Baidu Netdisk: https://pan.baidu.com/s/1sKgeBnMZmRnIr42_pVHmiw
🔑 展開コード: QQ ディスカッショングループに参加し、グループファイルで展開コードを確認してください。👉 QQ ディスカッショングループに参加
ダウンロード後、デプロイパッケージを展開してください
ステップ 3: qData を起動
デプロイパッケージ内に docker.zip アーカイブがあります。まず展開してください。
展開後、~/qData/docker パスへ移動します。中には多数の .yml ファイルがあります。
3.1 MySQL をメインDBとして使用
⚠️ ヒント: **Dameng Database(DM8)**を使用する場合、このステップはスキップしてください。
ステップ 1: インストールディレクトリへ移動
cd ~/(deployment-package-extraction-path)ステップ 2: .env ファイルを編集
sudo vi .env次の設定を探し、dm8 を mysql に変更します。
# DB type. Available values: dm8 or mysql
DB_TYPE=mysql3.2 DB を初期化(初回実行時は必須)
sudo docker-compose --profile schema up -d
💡 **MySQL** をメインDBとして使用する場合は、次を実行してください。
sudo docker-compose -f docker-compose-mysql.yml --profile schema up -d⚠️ 注意: entrypoint.sh ファイル権限の問題
初回に sudo docker-compose --profile schema up -d を実行して権限や Windows 改行コードのエラーが出る場合は、次のコマンドを順に実行してください。
# スクリプトへ権限を付与し、改行コードを修正
cd ~/qData(deployment-package-extraction-path)
sudo chmod -R 755 docker
sudo chown -R $USER:$USER ./docker
sed -i 's/\r$//' ./database/dm8/entrypoint.sh
sed -i 's/\r$//' ./database/dm8/entrypoint-arm64.sh
# 権限を確認
ls -l ./database/dm8/entrypoint.sh
# 期待値: -rwxr-xr-x
# 再度実行
sudo docker-compose --profile schema up -d
💡 **MySQL** をメインDBとして使用する場合は、次を実行してください。
sudo docker-compose -f docker-compose-mysql.yml --profile schema up -d3.3 qData を起動
確認する内容に応じて、軽量モードまたはフルモードを選択します。
軽量モード(light)
クイックデプロイや機能確認だけを行う場合は、DolphinScheduler と Spark を起動せずに qData を起動できます。
sudo docker-compose --profile light up -d
💡 **MySQL** をメインDBとして使用する場合は、次を実行してください。
sudo docker-compose -f docker-compose-mysql.yml --profile light up -dフルモード(all)
すべての依存サービスを使用する場合は、引き続き all モードを使用します。
sudo docker-compose --profile all up -d
💡 **MySQL** をメインDBとして使用する場合は、次を実行してください。
sudo docker-compose -f docker-compose-mysql.yml --profile all up -d3.4 デモデータを起動(任意)
組み込みデータソースで qData を確認する場合は、demo モードを別途起動します。demo モードは all から独立しています。
sudo docker-compose --profile demo up -d
💡 **MySQL** をメインDBとして使用する場合は、次を実行してください。
sudo docker-compose -f docker-compose-mysql.yml --profile demo up -d3.5 ローカルソースコード用の起動
# 上記のステップ 4.1 と 4.2 は実行不要
docker-compose --profile local up -d
💡 **MySQL** をメインDBとして使用する場合は、次を実行してください。
sudo docker-compose -f docker-compose-mysql.yml --profile all up -d(対応予定)⚠️ 注意: ポート占有の問題sudo docker-compose --profile all up -d 実行時にポートが使用中と閲覧された場合:
- エラーメッセージに従い、サーバー上で該当ポートを使用しているプロセスを停止します。
- または、デプロイパッケージ内の
*.yaml設定を編集し、80以外のポートマッピングをコメントアウトまたは取り除きします(コンテナ内部の動作には影響しません)。
5.5 その他のよく使うコマンド
⚠️ ヒント:
以下のコマンドはallモードを例としています。軽量モードを起動した場合は、allをlightに置き換えてください。demoモードは別途管理します。カスタムの
docker-compose-xxx.ymlファイルを使う場合、すべての起動コマンドでdocker-composeの後ろに-f docker-compose-xxx.ymlを加えるする必要があります。例: sudo docker-compose -f docker-compose-mysql.yml --profile all up -d
すべてのサービスの稼働状態を確認:
sudo docker-compose --profile all psqData のすべてのサービスを一時停止(データは保持):
sudo docker-compose --profile all stopすべてのサービスを再起動:
sudo docker-compose --profile all restartサービスを完全停止し、データを取り除き(既定環境へ戻す):
sudo docker-compose --profile all down
sudo docker-compose --profile schema downローカルソースコード起動に必要なミドルウェア
docker-compose --profile local up -d⚠️
downはデータを消去します。データを残したい場合はstopのみを使用してください。
デプロイ完了!🎉
デプロイ完了後、次のアドレスからアクセスできます。
🌐 qData データ基盤
http://<server-IP>:80
アカウント:admin
パスワード:qData123📅 スケジューラー DolphinScheduler
http://<server-IP>:12345/dolphinscheduler/ui/home
アカウント:admin
パスワード:dolphinscheduler123⚡ Spark コンソール
http://<server-IP>:8080/
⚠️ DolphinScheduler と Spark は
allモードでのみ起動します。lightモードでこれらの URL にアクセスできないのは想定どおりです。
🔑
<server-IP>をサーバーのパブリックIPまたはプライベートIPに置き換えてください。
💡 重要な注意
- 初回起動後は 1-2分ほど待つ ことをおすすめします。すべてのコンテナが初期化を完了するためです。
docker psでコンテナの状態を確認できます。- アクセスできない場合は、サーバーのファイアウォールでポート
80が開いているか確認してください。
