Dockerの軽量仮想化、イメージ、コンテナの詳細な説明

Dockerの軽量仮想化、イメージ、コンテナの詳細な説明

仮想化技術とは何ですか?

サーバーの場合、リソースはほとんどの場合アイドル状態であり、十分に活用されていません。そのため、スタートアップ企業の中には、安定した事業を展開するまでに、自社でコンピュータ室を構築し、多数のサーバーを構成し、高額な運用・保守コストを負担しなければならないところもあります。

そのため、現在ではほとんどの企業が初期段階でビジネスをクラウドに移行し、必要なリソースに応じて適切なサイズのサーバーをレンタルしています。クラウド サービス プロバイダーは、サーバーを複数の部分に分割し、それらを相互に分離します。これが仮想化技術です。

例えば、卒業したばかりの学生は最初は給料が低く、家を買うことができないだけでなく、大きな家を借りる余裕もないので、多くの人がハウスシェアを選択します。家主は家全体をいくつかの部屋に分割し、個別に賃貸しますが、これも仮想化の原理に似ています。

Dockerとは何ですか?

Docker は、LXC コンテナ テクノロジーをベースにし、Go 言語で開発されたオープンソースのコンテナ エンジンです。

ソースコードは Github でホストされており、Apache 2.0 プロトコルに準拠しています。

Docker は C/S アーキテクチャを使用しており、あらゆるアプリケーションに対して軽量で移植可能な自己完結型のコンテナを簡単に作成できます。

簡単に言えば、Docker は運用上の問題を迅速に解決するための技術的な手段です。

Docker はコンテナの一種ですが、コンテナは単なる Docker ではありません。

VMWare 仮想マシンなどの初期の仮想化では、複数のオペレーティング システムを同時に実行できます。ただし、各仮想マシンは個別のハードウェア リソースを仮想化する必要があり、これによりリソースの消費量が増加し、メイン サーバーの仮想化可能な独立したスペースは小さくなります。

コンテナ技術の最も注目すべき特徴は、すべてのコンテナがメインサーバーのハードウェアリソースを共有できるため、コンテナが軽量になり、起動が速くなることです。ただし、Docker は Linux システムのみをサポートしており、すべてのコンテナは Linux カーネルを共有します。

コンテナ: 名前の通り、アイテムを収納できるものです。各コンテナには必要に応じてアイテムを詰めることができ、コンテナ同士は分離されているため持ち運びも簡単です。例えば、家族で旅行に行くときは、各自が必要な日用品を自分の旅行バッグに詰めます。

あるいは、人生において非常に苦痛なことは、コンピュータ システムを再インストールし、さまざまなソフトウェアを再構成することだと言えるでしょう。ただし、事前にシステム ディスクを作成し、よく使用するソフトウェアを事前にインストールしておけば、システムを再インストールした後、すべてのソフトウェアが自動的に含まれるようになります。

クラウド プラットフォームでは、コンテナーにロードされる項目はさまざまなアプリケーションです。たとえば、ある企業が独自のプロジェクトをクラウド プラットフォーム A に展開しましたが、クラウド プラットフォーム B の方が価格が安く、パフォーマンスも優れていることがわかりました。環境を繰り返し構成したりソフトウェアをインストールしたりすることなく、クラウド プラットフォーム A のコンテナーをクラウド プラットフォーム B に直接パッケージ化して切り替えることができます。

UbuntuにDockerをインストールする

 sudo apt install dockerを実行します。 io
docker --version

Dockerアカウントを登録する

Docker公式サイト:

Docker アクセラレータ: 中国で公式の Docker イメージ ソースを使用する場合、ネットワーク上の理由によりダウンロードに失敗したり、タイムアウトになったりする可能性があるため、Daocloud を使用して構成を高速化します。

 curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io 

国内の情報源を見る:

Docker イメージ

Docker イメージは、オペレーティング システムをインストールするときに必要な iso CD イメージに似た読み取り専用ファイルです。このイメージを実行することで、さまざまなアプリケーションが展開されます。

docker search ubuntu でイメージを検索します。

イメージの特定のバージョンを取得したい場合は、公式 Web サイトで Ubuntu を検索し、「タグ」をクリックして、末尾のバージョン番号を検索します。

 docker pull ubuntu : 20.04 #イメージをプルする
dockerイメージ#すべてのローカルイメージを一覧表示する

画像を削除するには:

 dockerイメージrm nginx
docker rmi django #省略形

イメージリソースの名前変更操作: docker tag ubuntu:20.04 myubuntu:1.0

この操作により元の画像が保持されますが、必要ない場合は削除できます。

イメージを圧縮し、後で使用するために直接解凍します: docker save -o ubuntu.tar ubuntu

ubuntu.tar 圧縮パッケージをインポートします: docker load -i ubuntu.tar

指定したイメージの履歴を表示します: docker image history ubuntu:20.04

コンテナコマンド

ubuntu20.04 イメージを使用して、myrq という名前のコンテナを作成し、コンテナに入り、/bin/bash を実行します。

 docker run -it --name myrq ubuntu : 20.04 を実行ます。 

コンテナを終了します:

イメージ ubuntu:20.04 を使用してコンテナを作成します: docker create -it ubuntu:20.04

コンテナを起動します: docker start container

コンテナを停止します: docker stop container

コンテナを再起動します: docker restart container

すべてのローカルコンテナを一覧表示します: docker ps -a

コンテナを作成して起動します: docker run -itd ubuntu:20.04

コンテナに入る: docker attach container

コンテナを一時停止する: Ctrl-pを押してからCtrl-qを押します

コンテナ内でコマンドを実行する: docker exec container command

コンテナを削除します(まずコンテナを閉じます): docker rm container

コンテナCONTAINERをローカルファイルxxx.tarにエクスポートします: docker export -o xxx.tar container

ローカルファイルxxx.tarをイメージにインポートし、イメージにimage_name:tagという名前を付けます。docker import xxx.tar image_name:tag

コンテナによって生成されたイメージを使用してコンテナを作成します: run -it --name myrq4 ubuntu:1.0 /bin/bash

CPU、メモリ、ストレージ、ネットワークなど、すべてのコンテナの統計情報を表示します: docker stats

ローカルとコンテナ間でファイルをコピーする: docker cp xxx CONTAINER:xxxまたはdocker cp CONTAINER:xxx xxx

コンテナの名前を変更します: docker rename CONTAINER1 CONTAINER2

停止したコンテナをすべて削除する: docker container prune

すべてのコンテナを一括で削除するには、まずコマンドを使用してすべてのコンテナ ID を一覧表示し、それらを変数 a に割り当てます。

すべてのコンテナを強制的に削除:

走るシュ
docker psコマンド以下コマンドを実行します。
docker rm -f $ a

<<:  マイクロソフト、人工知能をベースにした2つのクラウドツールのプレビューを開始

>>:  大手企業間の競争を背景に、国内パブリッククラウド市場が急成長

推薦する

Dockerイメージとコンテナの簡単な分析

Docker を使用すると、開発者はローカル マシンに必要なソフトウェアやツールをすべてインストール...

IDC:中国の金融クラウド市場規模は2020年上半期に19億1000万米ドルに達した

11月17日、国際データコーポレーション(IDC)は最近、「中国金融クラウド市場(2020年上半期)...

Xiaoheitan: Bapingbao には、ブランドが静かに取引を成立させるのに役立つ 10 の主要な画面占有システムがあります。

月給5,000~50,000のこれらのプロジェクトはあなたの将来ですブランドの昇進は、すべての企業が...

CoCoA: 大規模機械学習の分散最適化のための一般的なフレームワーク

昨年、Michael I. Jordan 研究室は「CoCoA: 通信効率の高い分散最適化のための一...

KubernetesはITスキルの価値を高める

Kubernetes は、プラットフォーム間での開発、テスト、および生産プロセスの一貫性の向上を目指...

模倣は相手から学ぶことにも有効である

模倣は私たちの生来の本能です。人々が模倣の機能を拡大し続けるにつれて、インターネットでの模倣も私たち...

ウェブサイトとユーザーとの接続が失われたらどうなるでしょうか?

Baidu によるウェブサイトの重み付けの決定には複雑な論理的判断が伴いますが、本質的な出発点は依然...

私はウェブサイトの仕事をしています。

【ポイント】 自宅で親戚や友人と自分のキャリアについて話すとき、特にインターネットサークルの友人の場...

地元の人材ウェブサイトは、自社の開発のために人民元を稼ぐにはどうすればよいのでしょうか?

ウェブサイトの収益性については、皆さんがどのようなシナリオを思い浮かべるかわかりません。広告をクリッ...

raksmart: ロサンゼルス本土最適化ラインの「クラウドサーバー」の簡単な評価、中国電信は双方向cn2で、コストパフォーマンスが高い

Raksmart はクラウド サーバー事業に注力しており、従来の VPS 事業を放棄する可能性があり...

デジタルメディア分野におけるクラウド技術の革新と実践を探る - Techo Hubテクノロジーツアー長沙ステーション共有

【原文は51CTO.comより】6月26日午後、「デジタルメディア分野におけるクラウド技術の革新と実...

2023年天一雲全国雲祭りのゲームプレイ戦略を解説した記事

今年の天一雲全国クラウドフェスティバルのプロモーションは、「 5,000~6,000元のクーポンギフ...

ユーザーの視点から見た精密マーケティング企業のオンライン最適化プロジェクトの概要

問題点1. エンタープライズオンラインの旧バージョンのビジュアルスタイルは、既存の Web サイトの...

深海の戦い:クラウドコンピューティング企業が海底光ケーブル敷設に深く関与

このテーマについて書こうと思ったのは少し偶然でした。先週末、エコノミスト誌の記事を閲覧中に業界関連の...

なぜ企業はインターネットマーケティングの適切な担当者を見つけられないのでしょうか?

月収10万元の起業の夢を実現するミニプログラム起業支援プランモバイル インターネットの発展により、企...