HOME > CLIENT VOICE > 社内開発環境を最短10分で構築、Dockerで実現

Client Voice

LASSICは鳥取県を拠点に岡山、福岡、東京にもオフィスを開設し、ビジネスを展開しています。大きな柱はICTサービス事業とライフサイエンス事業。前者はICTコンサルティングやWeb系のニアショア開発、後者は感情解析技術を応用したコンサルティングやソフトウェア開発など。経営、システム開発、人材というようにビジネス価値向上を幅広くカバーしています。特に強みとなるのがICT事業です。大企業から自治体まで数多くのプロジェクトに携わってきました。自由な社風のなか、RubyやJavaなどの最先端技術をいち早く採り入れているのも強みです。今回はDockerを用いて自社の開発環境構築を自動化した経緯についておうかがいしました。

新規開発からサポートまで多様な開発環境を素早く構築したい

今回構築したのは自社開発環境だそうですね

LASSICではパッケージから受託開発までさまざまな開発案件を抱えており、それぞれのオフィスごとにサーバーやパソコンを駆使して開発環境を調整しています。新規開発案件はもちろん、検証やサポートのためにかつて構築した環境を再度構築しなおすこともあります。

これまでは開発環境を構築するまでにかかる時間が課題でした。プロジェクトごとにOS、ミドルウェア、アプリケーションなどソフトウェア構成はまちまちで、環境を構築するまでに長いときは5日かかることもありました。その間は実作業に入れないだけではなく、お客様をお待たせすることにもなります。

10分で開発環境を構築できるようにするのが目標でした。

急速に注目されるようになったコンテナ技術Dockerへシフト

Dockerはいつごろから検討していたのでしょうか?

最初は漠然とOpenStackなど仮想化技術をベースにプライベートクラウド構築をイメージして模索していたところ、2014年3月にクリエーションラインさんを紹介してもらいました。クリエーションラインさんからは「構築・メンテナンスの費用、納期、開発環境ができるまでの時間を加味するとプライベートクラウドはおすすめしません。替わりにVagrantやDockerなどを使った開発環境はどうですか」と提案をいただき、採択することにしました(最終的にVagrantは不要でした)。
Dockerは全く新しい技術でしたが、クラウド運用やDockerに詳しいクリエーションラインのエンジニアさんから説明をうけて「これならできる」と確信して話を進めることにしました。

DockerとVirtualBoxで開発環境を構築

構築したシステムの概要を教えてください

株式会社LASSIC

仮想マシンを管理する基盤をDockerとVirtualBoxを用いて構築しました。仮想マシンをイメージ単位で管理しています。Linux系ならOSイメージをDockerの公開レポジトリからダウンロードし、開発環境向けのイメージを構築してローカル環境に保管します。Windows ServerはVirtualBoxまたはKVMでイメージを構築します。

社外向け共用環境には1Uのサーバー、社内向け開発環境には3台のMac miniを用いています。Mac miniを提案された時は意外でしたが、3台だと合計メモリが48GBとなり、利用可能な仮想マシンが増えます。設置スペースが小さくてすみ、音も静かなためサーバールームのないオフィスでも使えて好都合です。

素早い開発環境構築、リソースの効率化

開発環境構築を自動化できてどのようなメリットが得られましたか?

何よりも早さです。最短10分で開発環境を構築できるようになり、すぐに開発に取りかかれるようになりました。これこそ私たちが望んだことです。

開発環境を素早く構築できると開発のサイクル短縮につながり、開発環境構築にかかる工数が減るのでコスト削減にもつながります。サポートであればお客様をお待たせすることもありません。

ワークフローで申請、スクリプトでイメージを起動

新システムをどのように運用していますか?

実際に新しい環境を構築するときには開発環境を必要とするユーザーが社内のグループウェアから申請を行い、承認が下りると運用担当者が開発環境の準備を行います。これはスクリプトを用意して実行します。すでに構築したことがある環境なら、既存のスクリプトをそのまま再利用してイメージを起動すればいいだけなので最短で10分も可能です。カスタマイズの複雑さに応じて時間が加算されますが、今では平均して30分程度で環境を構築できます。

システムをカットオーバーしたのは2014年末でしたが、当時はまだ社内で新システムについて周知が行き届いていませんでした。カットオーバー前後に社内のエンジニアを対象にDockerや新システムについての研修を行い、新システムで環境構築の申請が出始めるようになったのは2015年に入ってからです。2015年2月から一気に新システム利用者が増えました。

今後はバックアップとレポジトリ運用について検討

今後どのようにDockerを活用していきたいですか?

まずバックアップ体制を整えていこうと考えています。開発環境なので本番系のように完全なバックアップを必要としていませんが、過去に構築したプロジェクトの環境を再構築する必要もでてくるかと思いますので。構築した環境の履歴も整備していきたいです。

またレポジトリの運用について検討します。現時点では公開のレポジトリに登録せずに運用していますが、このままがいいかどうかをあらためて検討しようと考えています。

これまで新しい技術をいち早く取り込んできたように、今後もアンテナをはりビジネスの成果につなげていきたいです。今後のDockerの発展にも期待しています。

株式会社LASSIC (ラシック)

株式会社LASSIC (ラシック)

事業内容
IT&コンサルティング、ライフサイエンス、研修
代表者
代表取締役社長 若山 幸司
設立
2006年12月26日
資本金
8,888万円(※インタビュー時)
URL
http://www.lassic.co.jp/

CLIENT VOICE一覧を見る

mautic is open source marketing automation