ホームページ 運用・保守 Docker Dockerコンテナにアプリケーションをデプロイする方法

Dockerコンテナにアプリケーションをデプロイする方法

May 13, 2023 pm 12:58 PM

Docker は、アプリケーションを迅速、確実、繰り返してデプロイおよび管理できるようにする、人気のあるコンテナ化プラットフォームです。デプロイメントには Docker を使用し、アプリケーションと必要な実行環境をコンテナーにパッケージ化して、アプリケーションが異なる環境にデプロイされるときに発生する問題を解決します。この記事では、Docker コンテナーにアプリケーションをデプロイする方法について説明します。

1. Docker のインストール

まず、Docker をインストールする必要があります。さまざまなオペレーティング システムでは、Docker のインストール方法が異なる場合があります。 Ubuntu では、次のコマンドを使用してインストールできます:

sudo apt-get update
sudo apt-get install docker-ce
ログイン後にコピー

インストールが完了したら、次のコマンドを使用して Docker のインストールが成功したかどうかを確認できます:

docker version
ログイン後にコピー

2. Dockerfile

Dockerfile ファイルは、Docker コンテナーの構成ファイルであり、イメージのビルドに必要なすべての命令が含まれています。 Dockerfile を使用すると、アプリケーションに必要な実行環境を指定し、アプリケーションをコンテナーにパッケージ化できます。以下は Dockerfile のサンプルです:

# 指定基本镜像
FROM python:3.7-alpine

# 声明工作目录
WORKDIR /app

# 复制应用程序代码到工作目录中
COPY . /app

# 安装所有依赖项
RUN pip install --no-cache-dir -r requirements.txt

# 暴露端口
EXPOSE 5000

# 设置启动命令
CMD ["python", "app.py"]
ログイン後にコピー

上記の Dockerfile には次の内容が含まれています:

  • Python 3.7 イメージをベース イメージとして使用します。
  • 作業ディレクトリを /app として宣言します。
  • アプリケーション コードを作業ディレクトリにコピーします。
  • すべての依存関係をインストールします。
  • ポート 5000 を公開します。
  • 起動コマンドを python app.py に設定します。

必要に応じて変更し、Dockerfile として目的の場所に保存できます。

3. Docker イメージのビルド

Dockerfile ファイルが配置されているディレクトリで、次のコマンドを実行して Docker イメージをビルドします。 t パラメータはイメージ名を指定します。 Docker は、Dockerfile の指示に従ってイメージを構築します。最後の「.」は、ビルド コンテキストとしての現在のディレクトリを示していることに注意してください。

イメージのサイズとネットワーク速度によっては、ビルド プロセスに時間がかかる場合があります。ビルドが完了したら、次のコマンドを使用して、使用可能なすべての Docker イメージを表示できます:

docker build -t <镜像名称> .
ログイン後にコピー

イメージを表示した後、次のコマンドを使用してコンテナーを実行できます:

docker images
ログイン後にコピー

Amongこれらの -p パラメータは、ポートとコンテナのマッピングを指定します。この例では、コンテナーのポート 5000 をホストのポート 5000 にマップします。コンテナー内でいくつかの環境変数を指定する必要がある場合は、-e パラメーターを使用できます。例:

docker run -p 5000:5000 <镜像名称>
ログイン後にコピー

4. Docker イメージのアップロード

今後この Docker イメージをデプロイするには、パブリックにアクセス可能な Docker リポジトリにアップロードする必要があります。現在、Docker は公式の Docker Hub を提供しており、これを使用して画像をクラウドに簡単にアップロードできます。イメージをアップロードする手順は次のとおりです:

1. Docker Hub アカウントを作成し、そのアカウントにログインします。

2. ローカル環境で次のコマンドを実行して、Docker Hub にログインします:

docker run -p 5000:5000 -e "DB_HOST=localhost" <镜像名称>
ログイン後にコピー

このコマンドでは、Docker Hub アカウントのユーザー名とパスワードの入力を求められます。

3. 次のコマンドを実行して、ローカル イメージをマークします:

docker login
ログイン後にコピー

このうち、Docker Hub ユーザー名は、Docker Hub アカウントのユーザー名を指定します。バージョン番号は任意に設定できます。通常はセマンティック バージョン管理が使用されます。

4. 次のコマンドを使用して、イメージを Docker Hub にアップロードします:

docker tag <镜像名称> <Docker Hub用户名>/<镜像名称>:<版本号>
ログイン後にコピー

アップロード プロセスには時間がかかります。アップロードが完了すると、アップロードされたイメージを Docker Hub で表示できます。

概要:

上記は、Docker コンテナーにアプリケーションをデプロイする方法に関する詳細な手順です。Docker を使用すると、アプリケーションを迅速にデプロイおよび管理でき、開発環境と運用環境の信頼性と再現性が向上します。 . .もちろん、実際には、セキュリティ、ネットワーク パフォーマンス、ログ記録と監視など、考慮して最適化する必要がある問題は他にもたくさんあります。この記事が、Docker の機能をより深く理解するための出発点となれば幸いです。

以上がDockerコンテナにアプリケーションをデプロイする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Docker Swarmクラスターにアプリケーションを展開するにはどうすればよいですか? Docker Swarmクラスターにアプリケーションを展開するにはどうすればよいですか? Mar 17, 2025 pm 04:20 PM

この記事では、プロセス中の準備、展開ステップ、セキュリティ対策をカバーするDocker Swarmへのアプリケーションの展開を詳細に説明します。

Kubernetesのポッド、展開、サービスとは何ですか? Kubernetesのポッド、展開、サービスとは何ですか? Mar 17, 2025 pm 04:25 PM

この記事では、Kubernetesのポッド、展開、およびサービスについて説明し、コンテナ化されたアプリケーションの管理における役割について詳しく説明しています。これらのコンポーネントが、アプリケーション内のスケーラビリティ、安定性、および通信をどのように強化するかについて説明します。(159文字)

Kubernetesでアプリケーションをスケーリングするにはどうすればよいですか? Kubernetesでアプリケーションをスケーリングするにはどうすればよいですか? Mar 17, 2025 pm 04:28 PM

この記事では、手動スケーリング、HPA、VPA、およびCluster Autoscalerを使用してKubernetesのスケーリングアプリケーションについて説明し、スケ​​ーリングを監視および自動化するためのベストプラクティスとツールを提供します。

Docker Swarmにローリングアップデートを実装するにはどうすればよいですか? Docker Swarmにローリングアップデートを実装するにはどうすればよいですか? Mar 17, 2025 pm 04:23 PM

この記事では、Docker Swarmにローリングアップデートを実装して、ダウンタイムなしでサービスを更新することについて説明します。サービスの更新、更新パラメーターの設定、監視の進捗状況、スムーズな更新の確保をカバーしています。

Kubernetesでの展開を管理するにはどうすればよいですか? Kubernetesでの展開を管理するにはどうすればよいですか? Mar 17, 2025 pm 04:27 PM

この記事では、さまざまなツールとベストプラクティスを使用して、作成、更新、スケーリング、監視、および自動化に焦点を当てたKubernetesの展開の管理について説明します。

Docker Swarmでサービスを管理するにはどうすればよいですか? Docker Swarmでサービスを管理するにはどうすればよいですか? Mar 17, 2025 pm 04:22 PM

記事では、Docker Swarmのサービスの管理、ダウンタイムなしで作成、スケーリング、監視、更新に焦点を当てています。

Docker Swarmクラスターを作成するにはどうすればよいですか? Docker Swarmクラスターを作成するにはどうすればよいですか? Mar 17, 2025 pm 04:19 PM

記事では、セットアップ、スケーリングサービス、セキュリティベストプラクティスなど、Docker Swarmクラスターの作成と管理について説明します。

Docker SwarmはKubernetesとどのように違いますか? Docker SwarmはKubernetesとどのように違いますか? Mar 17, 2025 pm 04:18 PM

この記事では、Docker SwarmとKubernetesを比較し、アーキテクチャ、使いやすさ、エコシステムの違いに焦点を当てています。 Kubernetesは、そのスケーラビリティと高度な機能のために大規模な展開に好まれていますが、Docker Swarmはスマルにスーツを着ています

See all articles