実稼働環境に Docker をデプロイする方法
ソフトウェアの開発と展開の複雑さが増すにつれ、軽量コンテナ化テクノロジーが新しいトレンドになっています。 Docker は現在最も人気のあるコンテナ テクノロジの 1 つであり、開発者により効率的かつ高速な作業方法を提供すると同時に、企業にはより柔軟で信頼性の高い展開ソリューションを提供します。この記事では、コンテナ化されたアプリケーションをより適切に管理できるように、運用環境に Docker をデプロイする方法を紹介します。
- Docker のインストール
Docker をインストールする前に、サーバーのリソース割り当てとセキュリティ権限を管理する必要があります。 Ubuntu や CentOS などの主流の Linux オペレーティング システムを使用し、最新バージョンの Docker エンジンがサーバーにインストールされていることを確認することをお勧めします。
Docker のインストールは非常に簡単で、必要な手順はいくつかだけです:
1) 依存ツールをインストールします: apt-get update && apt-get install -y apt-transport-https ca-certificatescurlソフトウェア - プロパティ - 共通。
2) Docker の公式 GPG キーをインポートします:curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -。
3) Docker リポジトリを追加します: add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs)steady"。
4) Docker をインストールします: apt-get update && apt-get install -y docker-ce。
インストールが完了したら、docker コマンドを使用して、Docker が正常に実行されているかどうかをテストできます。たとえば、docker version コマンドを実行して、Docker のバージョン情報を確認します。
- Docker の構成
Docker をインストールした後、Docker がより適切に動作するように、基本的な構成を行う必要があります。
現在の主流の Docker CLI は、通信に Unix ドメイン ソケットを使用します。デフォルトでは、docker コマンドを実行するユーザーを docker ユーザー グループに追加すると、Docker デーモンと対話できるようになり、sudo コマンドの使用が回避されます。
Docker を構成するときは、次の点にも注意する必要があります。
1) Docker 構成ファイルを更新します。
Docker のデーモンは、次のように /etc/docker/ を読み取ります。デフォルトの daemon.json ファイルを使用して構成情報を取得します。ファイルを開いて、次のような必要な構成を追加します。
{
"registry-mirrors": ["https://url-of-mirror"],
"max-concurrent- downloads" : 5,
"debug": true,
"log-driver": "syslog",
"log-opts": {
"syslog-address": "tcp:/ /192.168 .0.0:111",
"tag": "prod"
}
}
その中で、レジストリ ミラーは、より高速な Docker ミラー アクセラレータ ソースを構成するために使用されます。 concurrent-downloads は同時にダウンロードするイメージの最大数を指定するために使用され、debug と log-driver は Docker のデバッグ ログを有効にして syslog ログ ファイルに出力するために使用されます。
2) Docker ストレージ ディレクトリを設定します
Docker はデフォルトで /var/lib/docker ディレクトリに保存されます。Docker ストレージを変更することで、Docker ファイル システム ストレージとストレージをより適切に管理できます。パス、データボリューム。リダイレクトを使用してデーモン構成ファイルを開き、次の行を追加します:
{
"data-root": "/mnt/data/docker"
}
/data最初に /docker/ ディレクトリを手動で作成する必要があり、実際のデプロイ状況に基づいて適切なストレージ パスを選択する必要があります。
- Docker イメージの構築
Docker では、Dockerfile ファイルを使用して、アプリケーションの環境とそのデプロイ方法を定義できます。 Dockerfile は、デプロイするアプリケーションの Docker イメージを構築する方法を指定する一連の命令で構成されるテキスト ファイルです。
Dockerfile ファイルの作成プロセスでは、FROM、RUN、COPY、EXPOSE、ENV、CMD、およびその他の命令を使用して、完全な Docker イメージを構築できます:
FROM ubuntu:18.04
RUN mkdir /app
COPY . /app
WORKDIR /app
CMD python app.py
上記の Dockerfile スクリプトはベース イメージとして Ubuntu 18.04 を使用し、/app ディレクトリを作成します、ローカル コード Copy を /app ディレクトリに追加し、最後に作業ディレクトリを /app に設定して、Python app.py スクリプトを実行します。
次のように docker build コマンドを使用して Docker イメージをビルドします。
docker build -t myapp:latest .
バージョン タグを使用して宣言することをお勧めします。 Dockerfile のバージョン番号 (例: FROM ubuntu :18.04 AS build)。
- Docker イメージの公開
Docker イメージを構築したら、それをイメージ ウェアハウスに公開して、アプリケーションをどこにでもデプロイできるように準備する必要があります。 Docker Hub はパブリック Docker イメージ リポジトリですが、プライベート Docker レジストリを使用してプライベート Docker イメージを保存できます。
Docker イメージをイメージ ウェアハウスにプッシュするには認証が必要です。具体的な方法は次のとおりです:
1) Docker ログイン コンソールを初期化します: docker ログイン レジストリ名。
2) Docker Hub またはプライベート Docker レジストリで使用するユーザー名とパスワードを入力します。
3) イメージを公開します: docker Push registry-name/myapp:latest。
これで、他の場所で使用できるように Docker イメージを Docker レジストリにプッシュすることができました。
- Docker コンテナのデプロイ
Docker コンテナを使用して Docker イメージを実行する場合、次のコマンドを使用できます:
docker run -- name myapp -p 127.0.0.1:80:80 -d myapp:latest
このうち、 --name パラメータは Docker コンテナの名前を指定し、 -p パラメータはコンテナがバインドされるホスト ポートを指定し、 -d パラメータはコンテナがバックグラウンドで実行されていることを示します。 myapp:latest は、Docker レジストリにプッシュされたばかりの Docker イメージです。
- Docker コンテナの管理
アプリケーションを Docker コンテナにデプロイした後は、管理する必要があります。 docker ps、docker logs、docker stop、docker rm およびその他のコマンドを使用して、Docker コンテナーを管理できます。
具体的な操作方法は次のとおりです。
1) 現在実行中の Docker コンテナを表示します: docker ps -a。
2) 指定された Docker コンテナーのログを表示します: docker logs myapp。
3) 指定された Docker コンテナを停止します: docker stop myapp。
4) 指定された Docker コンテナー docker rm myapp を削除します。
- 結論
Docker デプロイメントは、実稼働環境における重要なタスクです。 Docker をインストールし、その基本操作を構成した後、Docker イメージを構築し、Docker レジストリに公開する必要があります。最後に、Docker コンテナを使用してアプリケーションを実行し、管理し、監視します。以上、本記事では本番環境にDockerをデプロイする方法を詳しく紹介しましたので、ご参考になれば幸いです。
以上が実稼働環境に Docker をデプロイする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









Dockerは、DevOpsエンジニアにとって必須のスキルです。 1.Dockerは、アプリケーションとその依存関係をコンテナにパッケージ化することにより、分離と移植性を実現するオープンソースのコンテナ化されたプラットフォームです。 2. Dockerは、名前空間、コントロールグループ、フェデレーションファイルシステムで動作します。 3。基本的な使用には、コンテナの作成、実行、管理が含まれます。 4.高度な使用法には、DockerComposeを使用してマルチコンテナーアプリケーションを管理することが含まれます。 5.一般的なエラーには、コンテナ障害、ポートマッピングの問題、データの持続性の問題が含まれます。デバッグスキルには、ログの表示、コンテナの入り、および詳細情報の表示が含まれます。 6.パフォーマンスの最適化とベストプラクティスには、画像の最適化、リソースの制約、ネットワーク最適化、DockerFileを使用するためのベストプラクティスが含まれます。

Dockervolumeは、コンテナを再起動、削除、または移行すると、データが安全であることが保証されます。 1。ボリュームの作成:Dockervolumecreatemydata。 2。コンテナとマウントボリュームを実行します:Dockerrun-It-Vmydata:/app/dataubuntubash。 3.高度な使用には、データ共有とバックアップが含まれます。

Dockerセキュリティの強化方法は次のとおりです。1。-cap-dropパラメーターを使用してLinux機能を制限します。2。読み取り専用コンテナを作成します。これらの戦略は、脆弱性の露出を減らし、攻撃者の機能を制限することにより、コンテナを保護します。

LinuxでDockerを使用すると、開発と展開の効率が向上する可能性があります。 1。Dockerのインストール:スクリプトを使用して、ubuntuにDockerをインストールします。 2.インストールの確認:sudodockerrunhello-worldを実行します。 3。基本的な使用法:NginxコンテナDockerrun-Namemy-Nginx-P8080を作成します:80-Dnginx。 4。高度な使用法:カスタム画像を作成し、DockerFileを使用してビルドして実行します。 5。最適化とベストプラクティス:マルチステージビルドとドッケルコンポスを使用して、DockerFilesを作成するためのベストプラクティスに従ってください。

Dockerは、ブリッジネットワーク、ホストネットワーク、オーバーレイネットワークの3つのメインネットワークモードを提供します。 1.ブリッジネットワークは、単一のホストでのコンテナー間通信に適しており、仮想ブリッジを介して実装されています。 2。ホストネットワークは、高性能ネットワークが必要なシナリオに適しており、コンテナはホストのネットワークスタックを直接使用します。 3.オーバーレイネットワークは、マルチホストDockerswarmクラスターに適しており、仮想ネットワークレイヤーを介してクロスホスト通信が実現されます。

Docker画像を作成する手順:ビルド命令を含むDockerFileを書きます。 Docker Buildコマンドを使用して、ターミナルで画像を作成します。画像にタグを付け、Dockerタグコマンドを使用して名前とタグを割り当てます。

Docker画像を更新する手順は次のとおりです。最新の画像タグ新しい画像をプルする新しい画像は、特定のタグのために古い画像を削除します(オプション)コンテナを再起動します(必要に応じて)

Dockerデスクトップの使用方法は? Dockerデスクトップは、ローカルマシンでDockerコンテナを実行するためのツールです。使用する手順には次のものがあります。1。Dockerデスクトップをインストールします。 2。Dockerデスクトップを開始します。 3。Docker Imageを作成します(DockerFileを使用); 4. Docker画像をビルド(Docker Buildを使用); 5。Dockerコンテナを実行します(Docker Runを使用)。
