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つのクラウドツールのプレビューを開始

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

推薦する

vpeasy - $14.4/年/kvm/1g メモリ/15g SSD/1T トラフィック/Windows

Versawebは再び努力を始めました。以前ultravps.comブランドを立ち上げ、現在はVPE...

AWS が新しい Amazon Sumerian サービスを発表

シアトル — 2017 年 11 月 27 日深夜、AWS re:Invent Night Laun...

新しいウェブマスターがウェブサイトモデルを選択するためのゴールドスタンダード

SEO ビジネスは数世代にわたって発展してきました。あらゆるところで壁にぶつかって手探りで進んでいた...

Google、過剰な広告コンテンツのあるウェブサイトへのペナルティを発表

1月23日、Googleはユーザーからの苦情を受けて、ウェブページ上部に過剰な広告を掲載しているウェ...

サーバーレス コンピューティングの徹底的な考察: 起源、シナリオ、問題

[51CTO.com オリジナル記事] 1. サーバーレスコンピューティングの起源過去 10 年間で...

新しいコンピュータルーム: hostus-$15/年/768m メモリ/20g ハードドライブ/2T トラフィック/ダラス

Hostus からの最新ニュース: ウェブサイトが再設計され、ダラスに新しいデータ センターが追加さ...

動画サイト:独占できない市場では総合的なサイトが有利

ビデオ視聴の強い需要とビデオ広告の価値の高まりは、ビデオ業界に大きな発展の余地があることを意味します...

分散ストレージ - ハードディスク容量の不均一性によるキャッシュディスク寿命の急速な低下の分析

[51CTO.com からのオリジナル記事] Ceph 分散ストレージは、スケーラビリティ、信頼性、...

クラウド コンピューティングの経済的メリットを実現する 5 つの方法

ほとんどの企業はまだ、データセンターからクラウドへのワークロードの移行の過程にあります。通常、コスト...

2022 年に台頭する 5 つのクラウド コンピューティング トレンド

[[439048]]近年、消費者や企業によるクラウドストレージの利用事例が爆発的に増加しており、調査...

locvps ドイツ VPS (高速 CUII、中国聯通 AS9929 回線) レビュー

locvps のヨーロッパ VPS には、ロシアの cn2 gia (レビューを参照) だけでなく、...

分散データベースの構築方法

リレーショナル データベースは、過去数十年にわたってデータベース分野において常に絶対的な支配的地位を...

ワーナークラウド(hncloud) - cn2 + bgp回線香港クラウドサーバー評価

ワーナークラウドの毎年恒例の618プロモーションが始まったばかりで、香港データセンターのクラウドサー...

SEOチュートリアル: 無視できないウェブサイト内部構造の最適化

多くの人は SEO を行う際に混乱し、ウェブサイトのデータ、トラフィックが変化したかどうか、キーワー...

高品質なバックリンクとは何ですか?高品質な外部リンクを構築する方法。

SEO を行っている場合でも、ウェブサイトのプロモーションを行っている場合でも、コンテンツが王様であ...