マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】Docker

【OSS情報アーカイブ】Docker

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「Docker」とは

「Docker」基本情報

■概要

Docker(ドッカー)とは、オープンソースのコンテナ型仮想化ソフトウェアです。ソフトウェアコンテナ内のアプリケーションデプロイメントを自動化します。

■基本説明

Dockerは、性能面での劣化を極力排除したコンテナ技術を採用しており、アプリケーション/OSをパッケージイメージ化することにより極めて集約度の高いITシステムを実現することができます。

Dockerは、API提供/既存成果物の入手/成果物アップロードなどで、効率よく成果物管理/リユースする仕組みがあります。そして、それらの一連の作業を自動化する仕組みも備わっています。

クラウド基盤ソフトウェアに比べて、導入のハードルが比較的低く、簡単に試すことができます。そのため、多くの開発者やIT部門の管理者での利用が急激に広まっています。

コンテナ管理の手軽さ/インスタンス操作の高速性は、クラウドサービス/ビッグデータ基盤などを管理するためのIT基盤として高く評価されています。

Dockerは、コンテナ型仮想化ソフトウェアのデファクトスタンダードになる勢いで、中小規模からエンタープライズ規模まで、さまざまな領域で幅広く利用されています。

■「コンテナ型仮想化」とは

Dockerは「コンテナ型仮想化」と呼ばれる仮想化技術を利用しています。

1つのOSにコンテナといわれる「独立したサーバと同様の振る舞いをする区画」を複数作り、それを個別のユーザ/サービスに割り当てます。同じOS上に構築するため、すべてのコンテナは同じOSしか使えません。

コンテナには、個別にCPU/メモリ/ストレージなどを割り当てる必要がないため、システムリソースのオーバーヘッドが少なくて済みます。そのため、同じ性能のハードウェアならば、より多くのコンテナを作ることができます。

■Dockerの構成

一般的に「Docker」と呼ばれているコンテナ管理技術は「Docker Engine」が正式名称となっています。

「Docker Engine」に、アプリケーション開発/配布用Webサービス「Docker Hub」、API、サードパーティエコシステムなどを含めたプラットフォーム全体の総称が「Docker」となっています。

■経緯

DotCloud社(現 Docker Inc.)が、開発者/IT部門をターゲットとしたアプリケーションやOSの開発/配備を行うための基盤ソフトウェアとして開発し、2013年にリリースしました。

このソフトウェアは、オープンソースソフトウェア「Docker」として公開され、その使い勝手の良さから、多くの開発者/IT部門の管理者で瞬く間に利用されていきました。

■オフィシャルサイト情報

オフィシャルサイト

→Docker →Docker Engine

ライセンス情報

Dockerのライセンスは「Apache License Version 2.0」です。

詳細について、こちらを参照ください。
→GitHub →docker/docker-ce →LICENSE

ダウンロード

→Docker Hub →Docker CE

■同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「gVisor」など。

「Docker」の主な特徴

■インフラのコード化(Infrastructure as Code)

Dockerはコンテナ構成を、すべて「Dockerfile」というテキストファイルに記述でき、その構成を自動生成することができます。「Infrastructure as Code(インフラのコード化)を実践するプラットフォームとして利用できます。

■不変のインフラ構成(Immutable Infrastructure)

ITキーワードとして「Immutable Infrastructure(不変のインフラ構成)」というものがあります。アプリ実行環境を一度限りの使い捨てとして、環境を何度も作り直すことによって構成変更を行い、アプリの実行環境をより管理しやすくしていく考え方です。

Dockerのイメージ自体は起動されても更新は保存されません。明示的な保存(コミット)をしなければコンテナ破棄時に変更分が消えてしまいます。Dockerではこの仕様を、AUFSというファイルシステムを利用して実現しています。

Dockerには、「Immutable Infrastructure」を実現するために必要な機能がそろっているため、実際の環境に適用できます。

■オープンソース

Dockerには、新しい独自技術は、ほとんど使われていません。コンテナ管理に必要となる既存のOSSを組み合わせて、コマンドライン/REST APIで効率良くコンテナ管理ができるようになっている点が、広く支持され、注目されている理由となっています。

Docker参考情報①Docker入門(初心者向け)

Dockerの概要情報についてまとめられているサイトを紹介します。

■Dockerとは?コンテナとは?

概要

「Dockerとは何か?」「コンテナとは何か?」「従来のハードウェアエミュレーション型の仮想化とはどう違うのか?」などについてまとめられています。

解説テーマ

・軽量なコンテナ型の仮想化環境Docker
・Dockerイメージとは?
・Dockerイメージの履歴管理
・Dockerクラスタを管理するDocker Swarm

ページリンク

→@IT →超入門Docker:第1回 Dockerとは

■Dockerのメリット・デメリット

概要

「Dockerがなぜ利用されているのか?」「Dockerのメリットとデメリット」について、コンパクトにまとめられています。

解説テーマ

1.Dockerとは
2.Dockerとほかの仮想化技術の違い
3.Dockerを使うメリット・デメリット
4.まとめ

ページリンク

→キャスレーコンサルティング 技術ブログ →Dockerのメリット・デメリット

■Dockerの特徴

概要

「Dockerの特徴」や「Dockerの仕組み」などについてまとめられています。

解説テーマ

・Dockerの特徴
・Dockerのメリット・デメリット
・Dockerの仕組み
・クラウドと仮想化技術の遷移
・ベスト・プラクティス

ページリンク

→Docker入門 コンテナ型の仮想化技術の解説 →Docker とは

■Dockerに見るコンテナ型仮想化サービス

概要

Dockerが属する「コンテナテクノロジー」に焦点を当てて解説されています。

解説テーマ

・コンテナ型仮想化サービスとは?
・仮想マシンはコンテナに取ってかわられる?
・主戦場はパブリッククラウド
・コンテナを取り巻く環境
・コンテナがもたらす世界

ページリンク

→NISSHO USA →VMwareとどう違う?Dockerに見るコンテナ型仮想化サービス

■Dockerのアーキテクチャ

概要

Dockerが動作する仕組み(アーキテクチャ)について解説されています。

解説テーマ

・Docker とは何か?
・何のために Docker を使うのですか?
・Docker の主な構成要素は?
・Docker のアーキテクチャとは?
・では、どのようにして Docker は動作しますか?
・基礎技術

ページリンク

→Docker-docs-ja →アーキテクチャの理解

■Dockerの「使い方」と「基本コマンド」

概要

Dockerイメージを利用した簡単なセットアップ方法と、基本的なコマンドについて解説されています。

解説テーマ

・Docker(ドッカー)とは
・Dockerの使い方
・知っておきたい基本的なコマンド
・Dockerで快適な動作環境を手に入れましょう!

ページリンク

→カゴヤのサーバー研究室 →【入門】Dockerとは?使い方と基本コマンドを分かりやすく解説します

Docker参考情報②Dockerのインストール

Dockerインストールに関する情報についてまとめられているサイトを紹介します。

■About Docker CE

概要

「docker docs」のドキュメントです。

Dockerのインストールについて、基礎的な情報がまとめられています。

ページリンク

→Docker →About Docker CE

■Dockerインストール Linux(Ubuntu)編

概要

「Ubuntu 16.04 LTS」に「Docker CE(Community Edition)」をインストールする方法についてまとめられています。

解説テーマ

・Docker CE
・準備
・インストール
・動作確認
・追加設定
・まとめ

ページリンク

→SoraLab →Docker CEをUbuntu 16.04 LTSにインストールしてみた

■Dockerインストール Mac編

概要

「Docker for Mac」を利用したMacへのDockerインストール方法についてまとめられています。

解説テーマ

・Docker for Mac導入に際してのシステム要件:
・Docker for Mac インストール手順
・Step1.Docker for Macのインストール及び実行
・Step2.導入済みDocker構成要素の各種バージョンを確認
・Step3.アプリケーションの探索とサンプルの実行
・まとめ

ページリンク

→試纏 →Docker for Macインストール&入門実践記録

■Dockerインストール Windows編 「Docker-PowerShell」

概要

「Windowsコンテナのインストール方法」「主だったコンテナ管理のためのDockerコマンド」「Docker-PowerShell」について紹介しています。

解説テーマ

・Windowsコンテナのインストール
・Docker-PowerShellのインストール

ページリンク

→GMO Internet →TeckReport →第204回 Windowsコンテナのインストールとコンテナ管理 コンテナ管理のためのコマンド Docker&PowerShell

Docker参考情報③「Docker for Windows/Mac」とは

Docker参考情報③「Docker for Windows/Mac」とは

「Docker for Windows」と「Docker for Mac」に関する情報についてまとめられているサイトを紹介します。

■「Docker for Windows/Mac」とは

「Docker for Windows」とは

Windows 8以降では、標準的仮想化環境「Hyper-V」が実装されましたが、サードパーティー製仮想化ソフトウェアとは共存できません。

そこで、Windows標準の「Hyper-V」を使えるように作られたのが「Docker for Windows」です。

「Visual Studio」などとの親和性が高く、Windowsで開発/テストを行いやすい環境を作成できます。

「Docker for Mac」とは

MacOS上において、そのままではDockerは扱えません。

「Docker for Mac」を利用すると、「VirtualBox」などの仮想化ツールを利用せずにDockerを扱えます。

参考サイト

■【Windows】WindowsのDocker(コンテナ)対応

概要

「WindowsOS」と「Windowsコンテナ」と「Dockerコンテナ」の関連についてまとめられています。

解説テーマ

・探しているのは、Windows上のDockerですか? Windows上のUbuntuですか?
・Windows Server 2016のDocker対応とは?
・Hyper-VコンテナはWindows 10でもサポート
・Docker社提供のDocker for Windowsとは?
・Windows上でLinuxコンテナは動かないし、Linux上でWindowsコンテナも動かない
・Windows 10のHyper-Vコンテナのグレーゾーンとは……

ページリンク

→その知識、ホントに正しい? Windowsにまつわる都市伝説(69):WindowsのDocker(コンテナ)対応、正しく理解できていますか?

■【Windows】「Docker for Windows」で手軽にLinuxコンテナを利用

概要

「Docker for Windows」の「概要」「インストール方法」「簡単な利用方法」などについてまとめてまとめられています。

解説テーマ

・「Docker」とは?
・Docker for Windowsとは?
・Docker for Windowsの要件
・Docker for Windowsのインストール
・Docker for Windowsを使うには?
・Docker for Windowsの動作確認
・コンテナのロードと実行
・「Docker for Windows」アプリを使う
・「Kitematic」によるコンテナの管理

ページリンク

→@IT →Windows管理者のためのDocker入門:無償の「Docker for Windows」で手軽にLinuxコンテナを利用する

■【Mac】「Docker for Mac」をすすめる3つの理由

概要

「Docker for Mac」の概要とメリットなどについてまとめられています。

解説テーマ

・Docker for Mac とは?
・Docker for Mac をすすめる3つの理由
・1. VirtualBox が不要!
・2. 環境構築が高速!
・3. 起動が速い!
・まとめ

ページリンク

→SiTest →Docker for Mac とは? Docker 初心者にすすめる3つの理由

Docker参考情報④「Docker Hub」とは

Docker参考情報④「Docker Hub」とは

「Docker Hub」に関する情報についてまとめられているサイトを紹介します。

■「Docker Hub」とは

・Docker社が営利目的で開発/運営しているサービス
・無料ですべての機能が利用可能
・ユーザーが作成したコンテナをアップロードして公開/共有できるサービス
・コンテナは「リポジトリ」という単位で管理
・自由にダウンロードして自分のサーバに簡単にデプロイ可能
・タグを使ったバージョン管理が可能
・有料プランで作成できるプライベートリポジトリを増やせる

■「Docker Hub」概要

概要

Docker-docs-jaの「Docker Hub」に関する概要ドキュメントです。

解説テーマ

・Docker Hub アカウントの作成
・Docker イメージ・リポジトリの働き
・Docker コマンドと Docker Hub
・リポジトリの探索
・公式リポジトリを使う
・組織を作る

ページリンク

→Docker-docs-ja →Docker Hub 概要

■Dockerで作成したコンテナを「Docker Hub」で公開する方法

概要

Dockerで作成したコンテナを「Docker Hub」で公開する方法などについて紹介しています。

解説テーマ

・DockerとDocker Hub
・Docker Hubのアカウント作成
・Docker Hubに作成したコンテナをアップロードする
・Docker Hubリポジトリからコンテナを作成する
・Docker Hubリポジトリで公開されているコンテナを検索する
・公開リポジトリを利用する際の注意点

ページリンク

→さくらのナレッジ →Dockerコンテナをクラウドサービス上で共有できる「Docker Hub」を使ってみる

■「Docker Hubの使い方」と「Dockerイメージ自動ビルド」

概要

公式Dockerレジストリ「Docker Hub」に対して、「Dockerコンテナを公開する方法」「Automated Buildを利用してGitHubからDockerイメージを自動ビルドする方法」などを紹介しています。

解説テーマ

・早くもDocker 1.2がリリース
・Dockerイメージの共有方法
・Dockerレジストリ「Docker Hub」にDockerコンテナーを公開
・Docker Hub Automated Buildを利用したGitHubからのDockerイメージ自動ビルド
・Tips「Build Triggerを使ったDockerイメージの自動ビルド」
・Dockerの世界が広がる機能を活用してみよう

ページリンク

→@IT →いまさら聞けないDocker入門(終):Docker Hubの使い方とGitHubからのDockerイメージ自動ビルド

■「Docker Hub」と「AWS ECR(EC2 Container Registry)」概要

概要

「Docker Hub」と、同様サービス「AWS ECR(EC2 Container Registry)」の概要についてまとめられています。

解説テーマ

・レジストリでイメージを共有する
・Docker Hub – Docker 社公式のレジストリ
・AWS ECR を利用したイメージの管理
・おわりに

ページリンク

→オブジェクトの広場 →さわって理解するDocker 入門 第3回 Dockerイメージの管理

Docker参考情報⑤「Docker Compose」とは

Docker参考情報⑤「Docker Compose」とは

「Docker Compose」に関する情報についてまとめられているサイトを紹介します。

■「Docker Compose」とは

・Docker社が開発するコマンドラインツール
・複数コンテナを使うDockerアプリケーションを定義/実行できる
・あらかじめ用意しておいた設定ファイルに従ってコンテナを起動
・コンテナのビルドから連携までをyml形式のファイルベースで行う
・「コンテナ起動オプション」「環境変数」「コンテナ同士の依存関係設定」など、さまざまな設定も同時に記述可能
・ファイルベースなので環境の見通しがよく、開発環境のズレが生じない

■「Docker Compose」概要

概要

Docker-docs-jaの「Docker Compose」概要ドキュメントです。

解説テーマ

・単一ホスト上で、複数の環境を分離
・コンテナ作成時にボリューム・データの保持
・変更のあったコンテナのみ再作成
・環境間で変数の共有
・一般的な利用例
・開発環境
・自動テスト環境
・単一ホストへのデプロイ
・リリースノート

ページリンク

→Docker-docs-ja →Docker Compose 概要

■「Docker Compose」の基本的な使い方

概要

「Docker Compose」の基本的な使い方について紹介しています。

解説テーマ

・Dockerとは
・Docker-Compose

ページリンク

→Qiita →Docker & Docker-Composeの基本的な使い方

■「Docker Compose」の設定ファイル記述方法

概要

「Docker Compose」で使用できるコマンドや、設定ファイルの記述方法などについてまとめられています。

解説テーマ

・Dockerコンテナの管理を支援する純正ツール「Docker Compose」
・Docker Composeのインストールと使い方
・Docker Composeが使用する設定ファイル
・将来的にはDockerのクラスタ機能との連動も可能に

ページリンク

→さくらのナレッジ →複数のDockerコンテナを自動で立ち上げる構成管理ツール「Docker Compose」(Dockerの最新機能を使ってみよう:第7回)

■「Docker Compose」で「WordPressテーマ開発環境」を構築

概要

「Docker Compose」を使用して、複数のコンテナによる構成による「WordPressテーマ開発環境」を構築する方法についてまとめられています。

解説テーマ

・はじめに
・docker compose って?
・構築までのステップ
・[ Step.1 ] Docker および docker-compose をインストール
・[ Step.2 ] まっさらな WordPress × MySQL 環境を構築
・[ Step.3 ] テーマ開発ディレクトリを volume としてマウントする
・[ Step.4 ] MySQL から dump したデータを起動と同時に初期データとして流し込む
・[ Step.5 ] 任意のWPプラグインを起動と同時にインストールする
・締め – 動作が軽いので気軽にスクラップ & ビルドが出来る

ページリンク

→NET BIZ DIV. TECH BLOG →docker-compose を使って WordPress テーマ開発環境を構築しよう

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

AIツール関連 記事リストポータル

AIツール

2023.10.05

AIツール関連 記事リストポータル

AI 関連の記事をまとめたポータルページです。

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

AIツール実験室

2023.12.27

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

各チャットAIの「添削能力」について比較確認をしています。 「ChatGPT4と同等の添削能力を発揮した無料チャットAI」にご注目ください。 また、 ChatGPTカスタマイズ機能「GPTs」を利用して作成した GPTs文章添削機能「添削師匠さん✍️」を紹介しています。 課金勢は試しに使ってみてください。

【IT用語解説】「 デジタルヒューマン 」とは😊

IT用語解説

2024.01.26

【IT用語解説】「 デジタルヒューマン 」とは😊

【IT用語解説】「 デジタルヒューマン 」として、「デジタルヒューマンとは何か?」「どのようにして作成できるのか?」「私たちの世界にどのような影響を与えているのか?」などについて、まとめています。