アプリケーションをすばやく、簡単に構築できると多くの企業で導入されているDocker。デフォルトのままでも十分な機能がそろっていますが、クラウドサービスで利用することで、より簡単かつセキュアにDockerを使用することができます。
この記事ではDockerの基本を記載しつつ、環境構築に適したクラウドサービスOracle Container Cloud Serviceの概要を紹介していきます。
そもそもDockerとは
Oracle Container Cloud Serviceの説明をする前に、まずはDockerの概要について詳しくみていきましょう。
Dockerとは、Docker社が開発しているコンテナ型の仮想環境構築プラットフォームです。
これまでの仮想技術といえば、基となるOS(ホストOS)の上でもう1つのOS(ゲストOS)を動作させるハイパーバイザ型(Hyper-V、Linux KVMなど)が主流でした。
しかし、OSの上にもう1つのOSを立ち上げるため、オーバーヘッド(余分に必要となるリソース)が大きく、運用コストも割高になるという弱点がありました。
そこで注目を集めたのがDockerです。コンテナと呼ばれるユニットにソフトウェアをパッケージ化するため、新しいOSを立ち上げる必要もなく、軽量で高速に起動することが可能です。2013年の登場以来、どんな環境でもアプリケーションをすばやく構築、テスト、デプロイできると一気に脚光を浴び、今では多くの世界的企業が採用しています。
Dockerの特徴と利点
Dockerにできることは多岐に渡り、以下のような利点が挙げられます。
軽量化を図り作業を効率化
Docker最大のメリットと言えるのが、軽量化による作業の効率化。仮想マシンではOSをいくつも立ち上げる必要がありましたが、ゲストOSを使用しない軽量のコンテナなら一瞬で立ち上げることができます。
また、従来のシステム開発では、サーバーをはじめとした機器の調達、環境を整えることが最優先とされてきました。この点でも、Dockerを活用することで、ハードウェアを気にせずエンジニアはアプリケーション開発に専念することが可能となります。
運用コストの削減
従来のアプリケーション開発では、サーバー管理の多くのインフラコストがかかっていました。軽量で集約率が高いDockerコンテナであれば、CPUやメモリといったリソースの使用効率が向上し、毎日のインフラコストを大幅に削減していけるのです。
環境を配布しやすい
インフラ環境をコード化して管理可能なDockerなら、開発工程と同じ本番環境を簡単に作り出すことができます。これにより、開発では動いたが本番では動かないという心配がなくなり、ほかのエンジニアにも配布しやすくなるので、ヒューマンエラーの防止や作業時間の短縮につながります。
Docker Hub
Dockerには、ユーザーが作成したコンテナをアップロードして公開・共有できる「Docker Hub」というサービスがあります。世界中の開発者が作成した成果物を入手し、効率よく活用するための仕組みが整えられています。企業の業務遂行に有用なうえ、自社エンジニアや従業員たちのプログラミングの勉強にもつながるでしょう。
Oracle Container Cloud Serviceとは
Oracle Container Cloud Serviceとは、Dockerコンテナを簡単かつセキュアに提供する、オラクル社のクラウドサービスです。
Docker EngineやDocker ComposeといったDockerに互換した機能、プライベートレジストリへの簡単接続など、Dockerを簡単で便利に利用できるさまざまな機能が搭載されています。
またOracle Container Cloud Serviceでは、以下のコンポーネントとインタフェースでDocker環境の安全性を担保します。
- Oracle Container Cloud Serviceコンテナ・コンソール
ダッシュボード、エディタ、ビューを使用して、Docker内のイメージ、コンテナ、レジストリを管理。 - Oracle Container Cloud Service REST API
RESTリクエストをコード化して、Docker内のイメージ、コンテナ、レジストリを管理。 - Oracle Container Cloud Serviceコンソール
ダッシュボードとウィザードを使用して、サービス・インスタンスを作成・管理。
Oracle Container Cloud Service上でDocker環境を構築する手順
Oracle Container Cloud Serviceの概要について理解できたところで、実際にDocker環境を構築する手順を確認していきましょう。
Oracle Container Cloud Serviceへのアクセス
Oracle Container Cloud Serviceコンソールへアクセスするためには、以下の手順が必要です。
- :My Servicesアプリケーションにサインインして、受け取った電子メールに記載されている資格証明を使用してログイン
- :ダッシュボード→Oracle Container Cloud Serviceエントリに移動。メニューから「Open Service Console」を選択
- :Service Detailsのページにある「Open Service Console」をクリックして、「Services」タブを表示
Oracle Container Cloud Serviceインスタンスの作成
Oracle Container Cloud Serviceのサービス・インスタンスを作成するためには、以下の手順が必要です。
- :Oracle Container Cloud Serviceのコンソール画面から「インスタンス作成」をクリック
- :Instance Creationウィザードの「Details」ページで、以下の情報を入力
・サービス名
・サービスの説明
・SSF公開キー
・管理者ユーザー名・パスワード
・ワーカーノードのコンピュート・シェイプ
・ワーカーノード数
・ワーカーノードのデータボリューム - :確認画面でなにも問題なければ、作成をクリックして完了
- :数分後Oracle Container Cloud Serviceインスタンスが作成されると、コンソール画面に仮想マシンの情報が表示される
Oracle Container Cloud Serviceダッシュボードの使用方法
Oracle Container Cloud Serviceのダッシュボードにログインすると、次のような画面が表示されます。
各メニューの概要を覚えておきましょう。
- Dashboard:インスタンスの一覧情報
- Resource Pools:リソース・プールの作成・一覧表示
- Services:Servicesの新規作成や編集・削除
- Stacks:Stacksの新規作成や編集・削除
- Deployments:ServicesとStacksの一覧表示
- Containers:Dockerコンテナの一覧表示
- Images:各ホストのDockerイメージ
- Hosts:ホストに関する情報
- Registries:使用可能なレジストリ
- Search:アーティストの検索
- Tags:Dockerに使用するタグ情報
- Tasks & Events:実施・発生したイベントのログを表示
- Service Discovery:DockerのIPアドレスとポート番号を保持するデータベース
Dockerコンテナの起動方法
Dockerコンテナ(Oracle Container Cloud Serviceインスタンス)を起動するためには、以下の手順で進めていきます。
- :Oracle Container Cloud Serviceコンソールの「Services」を選択
- :登録済みのサービスが一覧で表示されるので、メニューアイコンをクリックして「開始」を選択
- :プロトコルが表示されたら「OK」をクリック。インスタンス内のマネージャノード、ワーカーノードが起動する
まとめ
今回は、Dockerのメリットや特徴を解説しつつ、より簡単かつセキュアに利用できるOracle Container Cloud Serviceを紹介してきました。
使いこなすことで作業が簡素化され、ヒューマンエラー防止にもつながりますので、Docker環境を構築している、もしくはこれからの導入を考えている企業の方は、ぜひ検討してみてはいかがでしょうか。
- カテゴリ:
- OCI基礎知識