ホームページ  >  記事  >  運用・保守  >  Linux での Docker: コンテナ化を使用してアプリケーションをデプロイするにはどうすればよいですか?

Linux での Docker: コンテナ化を使用してアプリケーションをデプロイするにはどうすればよいですか?

王林
王林オリジナル
2023-07-28 22:25:141552ブラウズ

Linux での Docker: コンテナ化を使用してアプリケーションをデプロイするにはどうすればよいですか?

はじめに:
現代のソフトウェア開発において、コンテナ化テクノロジーは非常に重要なスキルとなっています。現在、最も人気のあるコンテナ化プラットフォームの 1 つとして、Docker は Linux で広く使用されています。この記事では、Docker を使用して Linux 上でアプリケーションをコンテナ化してデプロイする方法を紹介し、関連するコード例を示します。

1. Docker コンテナを使用する理由は何ですか?
ソフトウェアの規模と複雑さが増大し続けるにつれて、アプリケーションの導入、運用、保守はますます煩雑になってきています。従来の展開方法では、通常、環境を手動で構成し、依存関係やその他の問題を処理する必要があります。また、異なる開発環境間に互換性がない可能性があり、その結果、開発、テスト、運用環境間に差異が生じ、エラーが発生する可能性が高くなります。

Docker コンテナを使用すると、アプリケーションとその依存関係を独立したコンテナにパッケージ化し、さまざまな環境で一貫した実行結果を保証できます。この分離により、コンテナをさまざまなマシンに迅速にデプロイおよび複製できるため、開発とデプロイの効率が向上します。

2. Docker のインストール
Docker の使用を開始する前に、まず Linux システムに Docker をインストールする必要があります。インストールは次の手順で完了できます:

1. システム ソフトウェア パッケージを更新します:
$ sudo apt-get update

2. Docker 依存関係パッケージをインストールします:
$ sudo apt -get install apt-transport-https ca-certificatescurl 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)steady"

5. パッケージ キャッシュを更新し、Docker をインストールします。
$ sudo apt-get update
$ sudo apt-get install docker-ce

3. Docker コンテナを使用してアプリケーションをデプロイする
次は、Docker コンテナを使用して Python ベースの Web アプリケーションをデプロイする方法を示す簡単な例です。

1. app という名前の作業ディレクトリを作成し、ディレクトリを入力します:
$ mkdir app
$ cd app

2. Dockerfile という名前のファイルを作成し、次の内容をコピーします

FROM python:3.9
COPY . /app
WORKDIR /app
RUN pip install -r requirements.txt
CMD ["python", "app.py"]

3. 作業ディレクトリに、requirements.txt というファイルを作成し、アプリケーションに必要な Python の依存関係をそのファイルに追加します。

4. Web アプリケーションのエントリ ポイントとして、作業ディレクトリに app.py という名前の Python ファイルを作成します。

5. Docker イメージをビルドします:
$ docker build -t myapp .

6. Docker コンテナを実行します:
$ docker run -d -p 8000:8000 myapp

これで、Docker コンテナを使用した Python ベースの Web アプリケーションのデプロイが完了しました。 http://localhost:8000 にアクセスすると、ローカル ブラウザでアプリケーションにアクセスできます。

この例は単なる単純なデモンストレーションです。実際、Docker には、ネットワーク設定、ボリュームのマウント、コンテナーの相互接続など、特定のニーズに応じて構成できるその他の構成および管理オプションが用意されています。

4. 概要
この記事では、Docker コンテナを使用して Linux にアプリケーションをデプロイする方法を紹介し、対応するコード例を示します。 Docker を使用すると、アプリケーションのデプロイメントプロセスが簡素化され、デプロイメントの効率と信頼性が向上します。この記事が、Docker コンテナー化されたデプロイメント アプリケーションを理解して学習するのに役立つことを願っています。

コード例:
Dockerfile コンテンツ:

FROM python:3.9
COPY . /app
WORKDIR /app
RUN pip install -r requirements.txt
CMD ["python", "app.py"]

requirements.txt コンテンツ:

flask==1.1.2

app.py コンテンツ:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return "Hello, Docker!"

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8000)

以上がLinux での Docker: コンテナ化を使用してアプリケーションをデプロイするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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