dockerを本番環境に入れて浮彫になった問題点

dockerを本番環境に入れて浮彫になった問題点

おはこんばんにちは、サーバ担当のtakeuchiです。

弊社では8月初旬より、一部のサーバでdockerを使ったコンテナ管理をしており、その運用で問題になった内容の一部を、本日は紹介してみようと思います。

dockerとは?

Docker(ドッカー)はソフトウェアコンテナ内のアプリケーションのデプロイメントを自動化するオープンソースソフトウェアである。 –Wikipedia

image07

「Dockerとは、Docker社が開発しているオープンソースのコンテナ型仮想化ソフトウェアである。 Linux上でLXC(Linux Container)の技術を活用し、コンテナ型の仮想環境を作成するものだ。 Dockerの主な特徴は、以下の通りである。 コンテナの作成からプロダクトのインストール・設定するまでの手順を、“Dockerfile”というテキストファイルに定義できる(インフラのコード化)。」
引用:Dockerが注目されている理由を探る

docker実践備忘録

利用方法

dockerの重要コンセプトである「Immutable Infrastructure(仮想環境上で稼働させることで、ホストOS自体への変更を行わないようにして安定的にアプリケーションを稼働させる仕組み)」とはかけ離れますが、主にVPS(バーチャル・プライベート・サーバ)の代替として使用しています。

また、クラウド上でサーバを展開する場合にも使用しており、1つのdocker imageを使い回すことでベースのOSを気にせず、どのクラウドサービスでも基本的にサーバを展開できます。(但しLinux系に限る)

サービスサーバ以外ではステージング環境、検証環境へも流用しており、複数のディストリビューションの上で動作させています。

なぜ、こんな事が必要か?

dockerを知っている方には釈迦に説法ですが、docker imageを使い回す事で、安定したサーバ基盤(含むアプリケーション)を短時間で大量に立ち上げる事ができます。

イマドキのサーバ管理はオープン、クローズを問わずクラウド上に必要数に応じてサーバを展開し、尚かつ、漏れなく、無駄無く、安全にサービス提供まで「短時間」で構築する必要があります。「無駄無く」するには、不要になったらさっさと閉じるまでを考慮に入れなければ行けません。

すぐに閉じると判っているものに構築時間を費やすのは無駄です。だから短時間にサーバを立てる事は非常に重要なのです。

運用で良く使ったコマンド

dockerイメージ一覧取得

起動中のコンテナ一覧取得

すべてのコンテナ一覧取得

index.docker.ioからイメージを検索

IMAGEからコンテナを起動

あなたにおすすめ

仮想環境で『Ansible』を使ってサーバ構築... 最近、サーバ構築を実施する必要がありました。 まずは仮想環境を作り、サーバ構築を……と思ったのですが、私はインフラ周りの経験が浅く、色々困ったことが頻出してしまいました。 今回の記事では、私と同じような “サーバ構築ビギナー” ...
内線電話用の番号検索|Slack APPで作ってみた... ショーケース・ティービーではメール誤送信防止という観点から、社内連絡ではチャットツールを使用しています。 現在使用しているツールは「HipChat」。 <bitWave関連記事『情報漏えいしないための決定打!”Hip Chat”』>...
Amazon EC2|Red Hat Linux 7.3で“Muninインストール“や“パッケージ導... ナマステ~! 私はナラヤンです! 今回が初投稿になるのですが、実はこれまで何度か本bitWave上でも登場していました。 <bitWave関連記事『おもてなしの企業の社員が、ネパール人をおもてなししてみた!』> <bitWave関...
継続的インテグレーションツール『Jenkins』を触ってみた... こんにちは。M.Sです。 現在、『Jenkins』からSeleniumを実行するお題に取り組んでいます。 『Jenkins』ってなに? 身近な継続的インテグレーションとは 『Jenkins』はjavaで実装されたオープンソー...