ホームページ >運用・保守 >Linuxの運用と保守 >Linux サーバー管理: Docker を使用して迅速な導入と拡張を行うにはどうすればよいですか?
Linux サーバー管理: Docker を使用して迅速な展開と拡張を行うにはどうすればよいですか?
はじめに:
クラウド コンピューティングとコンテナ化テクノロジーの発展に伴い、軽量の仮想化ツールとして Docker が多くの開発者や運用保守担当者にとって最初の選択肢となりました。この記事では、Docker を使用して Linux サーバー上で迅速な導入と拡張を行い、アプリケーションの運用効率と拡張性を向上させる方法を紹介します。
ステップ 1: サーバー ソフトウェア パッケージを更新します
$ sudo apt-get update
ステップ 2: Docker の依存関係をインストールします
$ sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
ステップ 3: Docker 公式を追加しますGPG キー
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
ステップ 4: Docker リポジトリの追加
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
ステップ 5: パッケージ インデックスを更新して Docker をインストール
$ sudo apt-get update $ sudo apt-get install docker-ce
# 使用基础镜像 FROM ubuntu:latest # 设置作者信息 MAINTAINER Your Name <your@email.com> # 安装相关依赖 RUN apt-get update && apt-get install -y python3 python3-pip # 设置工作目录 WORKDIR /app # 将应用程序添加到镜像中 COPY . /app # 安装应用程序依赖 RUN pip3 install -r requirements.txt # 设置容器启动命令 CMD ["python3", "app.py"]
上の例では、最新の Ubuntu イメージをベース イメージとして使用しました。次に、Python3 と pip3 ツールをインストールし、アプリケーション フォルダーをイメージにコピーしました。次に、アプリケーションの依存関係をインストールし、app.py ファイルを実行するようにコンテナー起動コマンドを設定します。
$ docker build -t myapp:latest .
上記のコマンドでビルドされます。 Dockerfile の定義に基づく Docker イメージ myapp という名前で最新バージョンとしてマークされたイメージ。
$ docker run -d -p 80:5000 myapp:latest
上記のコマンドは、コンテナの実行を開始します。バックグラウンド モードで、ホストのポート 80 をコンテナのポート 5000 にマップします。このようにして、ブラウザを介してホストのポート 80 にアプリケーションにアクセスできます。
まず、Docker Compose を使用してアプリケーションのアーキテクチャ全体を定義する必要があります。 docker-compose.yml というファイルを作成し、次の内容を追加します。
version: '3' services: app: build: context: . dockerfile: Dockerfile image: myapp:latest ports: - "80:5000" load_balancer: image: nginx:latest ports: - "80:80" volumes: - ./nginx.conf:/etc/nginx/conf.d/default.conf:ro depends_on: - app
上の例では、app とload_balancer という 2 つのサービスを定義しました。アプリ サービスは、現在のディレクトリ内の Dockerfile に基づいてイメージを構築し、コンテナーのポート 5000 をホストのポート 80 にマップします。 load_balancer サービスは Nginx イメージを使用し、ホストのポート 80 をコンテナのポート 80 にマップします。
次に、nginx.conf という名前の構成ファイルを作成し、次の内容を追加する必要があります。
upstream app_servers { server app:5000; } server { listen 80; location / { proxy_pass http://app_servers; } }
上記の構成ファイルは、app_servers という名前のアップストリームを定義し、proxy_pass を使用してリクエストをアプリサービス。
最後に、次のコマンドを使用してアプリケーションの複数のインスタンスを実行します。
$ docker-compose up --scale app=3
上記のコマンドは、3 つのアプリ コンテナ インスタンスを実行し、トラフィック分散のためのロード バランサとして Nginx を使用します。
結論:
Docker を使用すると、アプリケーションを迅速にデプロイし、簡単に拡張できます。 Dockerfile を作成してイメージ構築手順を定義し、docker run コマンドを使用してコンテナーを実行し、Docker Compose を使用して複数のコンテナーを管理することで、アプリケーションをより効率的に管理およびスケーリングできます。この記事が、Docker を使用して Linux サーバーにデプロイおよび拡張するのに役立つことを願っています。
以上がLinux サーバー管理: Docker を使用して迅速な導入と拡張を行うにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。