ハイブリッドインフラストラクチャのデプロイ

Docker、MySQL、Nginx、Apache を使用して最新のハイブリッドスタックをデプロイします。レガシーサービスを維持しながら、アプリケーションのコンテナ化、データベースの管理、リバースプロキシの設定を行います。

DevOps EngineerDockerMySQLDevOps

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

モダナイゼーションで、すべてのサービスを一度に置き換えることは稀です。このチャレンジ形式のプロジェクトでは、コンテナ化 Web 試行、ホスト上のデータベース、Nginx ゲートウェイ、Apache レガシーエンドポイントからなるローカル混成スタックを運用します。

Docker へのコンテンツの bind mount、MariaDB アカウントの単一 DB への制限、準備済み内部アプリへのプロキシ、Apache .htaccess による旧 URL の維持を実践します。ポート競合を避けてコンテナとホストサービスを協調させる課題です。

学習内容

  • web-pilot という nginx:alpine コンテナを bind mount と 8080:80 のポート公開で実行する
  • MariaDB を導入・起動し、globaltech_data を作成して app_user@localhost にその DB の権限を与える
  • ホスト Nginx のポート 80 で / を準備済みサービス 127.0.0.1:5000 へプロキシする
  • Nginx 設定を検証して再読み込みし、公開エンドポイントからバックエンド内容を確認する
  • Apache をポート 8081 に移し、/legacy を配信して .htaccess 上書きを許可する
  • Apache ルールで /old から /legacy への 301 または 302 を実装・検証する

このコースの対象者

結果重視のチャレンジで Docker、MariaDB、Nginx、Apache を統合したい Linux・DevOps 学習者向けです。

前提知識: Docker 実行オプションと bind mount、Linux パッケージ・サービス、基本 SQL 権限、Web サーバー設定、ポート、curl。評価型プロジェクトです。

学習環境: sudo、Docker、APT、MariaDB、Nginx、Apache、ポート 5000 の準備済みバックエンド、ローカルネットワークを備えたブラウザー対応 Linux ホスト。クラウド不要です。

よくある質問

ここでのハイブリッドはハイブリッドクラウドや複数ノードですか?

いいえ。1 台のラボマシン上で Docker ワークロードとホストサービスを組み合わせます。クラウドや複数サーバーは構築しません。

MariaDB は Web アプリに接続しますか?

いいえ。DB、ローカルユーザー、パスワード、限定権限を個別に検証します。Schema、テーブル、Migration、アプリ接続は対象外です。

Nginx の背後のバックエンドを作りますか?

いいえ。127.0.0.1:5000 に模擬アプリが準備済みで、ポート 80 の Nginx から到達できるようにします。

Nginx と Apache が共存できるのはなぜですか?

Nginx は 80、Apache は 8081、Docker は 8080 と別ポートです。/old の転送は .htaccess に定義する必要もあります。

講師

labby
Labby
Labby is the LabEx teacher.