Docker分離メカニズム
Dockerコンテナは、次のメカニズムを通じて分離されます。
1。名前空間分離
名前空間は、プロセスが独自のリソースビューを持つことができるスタンドアロン仮想環境を作成できるLinuxカーネルメカニズムです。 Dockerコンテナは、次の名前空間タイプを使用します。
- PID名空間:コンテナ内のプロセスに独自のPIDスペースがあるように、プロセスIDを分離します。
- ネットワークネームスペース:分離ネットワークインターフェイスで、各コンテナが独自のIPアドレスとルーティングテーブルを持つことができます。
- マウントネームスペース:ファイルシステムマウントポイントを隔離し、コンテナがホストファイルシステムにアクセスしないようにします。
2。コントロールグループ(cgroups)
コントロールグループは、リソースの使用を制限および分離するために使用されるLinuxカーネルメカニズムです。 Dockerは、コントロールグループを使用して、CPU、メモリ、ブロックデバイス、ネットワークなどのリソースへのコンテナアクセスを制限します。
3。ユニオンファイルシステム
AUFS、OverlayFS、DevMapperなどのユニオンファイルシステムにより、複数のファイルシステムを一緒に積み重ねることができます。 Dockerはユニオンファイルシステムを使用して、コンテナ画像とホストの基礎となるファイルシステムを組み合わせて、コンテナがイメージ内のファイルにアクセスできるようにしながら、ホストファイルシステムの特定のファイルを上書きできるようにします。
4。Selinux
SELINUX(Security Enhanced Linux)は、アクセス制御ポリシーを実施するセキュリティモジュールです。 DockerはSELINUXを使用して、コンテナとホスト、その他のコンテナ間の相互作用をさらに制限します。
5。Apparmor
Apparmorは、ポリシーベースのアクセス制御メカニズムです。 DockerはApparmorを使用して、コンテナ内のプロセスによるファイル、ネットワークアクセス、およびシステムコールを制限します。
6。ユーザー名空間
ユーザーネームスペースはユーザーIDとグループIDを分離するため、コンテナ内のプロセスには独自のユーザー環境があり、ホストから分離されます。
これらの分離メカニズムを通じて、Dockerコンテナは互いに独立して実行され、ホストから分離され、セキュリティ、パフォーマンス、および移植性が確保されます。
以上がDockerの隔離を達成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

LinuxでDockerを使用すると、開発効率が向上し、アプリケーションの展開を簡素化できます。 1)Ubuntu画像を引く:dockerpullubuntu。 2)ubuntuコンテナを実行:Dockerrun-itubuntu/bin/bash。 3)nginxを含むDockerFileを作成します:fromubuntu; runapt-getupdate && apt-getinstall-ynginx; expose80。 4)画像の作成:dockerbuild-tmy-nginx。 5)コンテナの実行:Dockerrun-D-P8080:80

Dockerは、Linuxのアプリケーションの展開と管理を簡素化します。 1)Dockerは、アプリケーションとその依存関係を軽量でポータブルコンテナにパッケージ化するコンテナ化されたプラットフォームです。 2)Linuxでは、DockerはCgroupと名前空間を使用して、コンテナの分離とリソース管理を実装します。 3)基本的な使用には、画像の引き込みと実行容器が含まれます。 DockerComposeなどの高度な使用は、マルチコンテナーアプリケーションを定義できます。 4)一般的に使用されるDockerLogsとDockerexecコマンドをデバッグします。 5)パフォーマンスの最適化は、マルチステージの構造により画像サイズを縮小することができ、DockerFileをシンプルに保つことがベストプラクティスです。

Dockerは、アプリケーションのパッケージ化、配布、およびアプリケーションの携帯性とスケーラビリティを改善するために使用されるLinuxコンテナテクノロジーベースのツールです。 1)DockerBuildおよびDockerrunコマンドを使用して、Dockerコンテナを構築および実行できます。 2)DockerComposeを使用して、マルチコンテナーDockerアプリケーションを定義および実行して、マイクロサービス管理を簡素化します。 3)マルチステージの構造を使用すると、画像サイズを最適化し、アプリケーションの起動速度を向上させることができます。 4)コンテナログの表示は、コンテナの問題をデバッグする効果的な方法です。

Docker Containerの起動手順:コンテナ画像を引く:「Docker Pull [Mirror Name]」を実行します。コンテナの作成:「docker create [options] [mirror name] [コマンドとパラメーター]」を使用します。コンテナを起動します:「docker start [container name or id]」を実行します。コンテナのステータスを確認してください:コンテナが「Docker PS」で実行されていることを確認します。

Dockerログを表示する方法は次のとおりです。たとえば、Docker Logsコマンドを使用します。たとえば、Docker logs container_name docker execコマンドを使用して /bin /shを実行し、logファイルを表示します。 cat /var/log/container_name.log docker-compose -f docker-comのDocker ComposeのDocker-Composeログを使用します。

すべてのコンテナ(Docker PS)をリストする手順に従って、Dockerコンテナ名を照会できます。コンテナリストをフィルタリングします(GREPコマンドを使用)。コンテナ名(「名前」列にあります)を取得します。

Dockerでコンテナを作成します。1。画像を引く:Docker Pull [ミラー名]2。コンテナを作成:Docker Run [Options] [Mirror Name] [コマンド]3。コンテナを起動:Docker Start [Container Name]

Dockerコンテナを終了する4つの方法:コンテナ端子でCtrl Dを使用するコンテナターミナルに出口コマンドを入力しますDocker stop< container_name>コマンドを使用するDocker Kill< container_name>ホストターミナルのコマンド(フォース出口)


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

Dreamweaver Mac版
ビジュアル Web 開発ツール

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

WebStorm Mac版
便利なJavaScript開発ツール
