タグ

ブックマーク / mag.osdn.jp (14)

  • 【Jenkinsを使った自動テスト環境を作る】Dockerコンテナを使って自動ビルドを実行する | OSDN Magazine

     継続的インテグレーション(CI)ツールとして有名なJenkinsは、ソフトウェア開発におけるテストやビルドと言った作業を自動化するツールだ。後編となる今回は、Dockerを使ってコンテナ内に構築したビルド環境をJenkinsから利用する例を紹介する。 Jenkinsの「マスター/スレーブ」機能 前回記事では、Jenkinsをインストールしたサーバー内でソフトウェアのビルドやテストを行うことを前提に環境を構築していった。Jenkinsをインストールしたサーバーと、対象とするソフトウェアのビルド/実行環境が同じで構わなければこれで問題はないが、たとえばそれぞれビルド/実行環境が異なる複数のソフトウェアをJenkinsで管理したい場合、このやり方では複数台のサーバーを用意しなければならない。 Jenkinsではこういった問題を解決するため、Jenkinsがインストールされたサーバーとは異なる

    【Jenkinsを使った自動テスト環境を作る】Dockerコンテナを使って自動ビルドを実行する | OSDN Magazine
  • 【Jenkinsを使った自動テスト環境を作る】パイプラインを使ったビルド/テストの自動化 | OSDN Magazine

    継続的インテグレーション(CI)ツールとして有名なJenkinsは、ソフトウェア開発におけるテストやビルドと言った作業を自動化するツールだ。記事ではJenkinsの最新版となるバージョン2系で正式に導入された、パイプライン機能を使ったビルド/テスト環境の構築を紹介する。 CIツールと「Jenkins」 ソフトウェア開発の現場において、そのテストはソフトウェアの設計やコーディングと同じくらい重要な過程である。近年のWebアプリケーションやスマートデバイス向けアプリケーション開発ではアプリケーションのリリース間隔が短くなっている傾向があり、そのためテストもより迅速かつ頻繁に行わなければならくなっている。そういった環境で有用なのが、継続的インテグレーション(CI)ツールだ。 CIは、元々は「ソフトウェアの開発コストを下げるためには開発の初期から頻繁にテストを行ってフィードバックを行うべき」とい

    【Jenkinsを使った自動テスト環境を作る】パイプラインを使ったビルド/テストの自動化 | OSDN Magazine
  • 【Dockerの最新機能を使ってみよう】Dockerコンテナで利用できるリソースや権限を制限する | OSDN Magazine

    新たなサーバー環境構築ツールとして普及が始まっているDockerは、その開発も積極的に行われている。そこで連載記事では、4回に渡って最近Dockerに実装された新機能について紹介していく。今回は、コンテナに割り当てるリソースの制限やDockerが持つ権限分離機構について紹介する。 Dockerが備えるリソース制限機構 仮想化技術を利用するメリットの1つに、柔軟にリソースを管理できる点がある。Dockerでは古くからコンテナに割り当てるCPUリソースやメモリ容量を指定する機能があったが、Docker 1.6以降では割り当てるCPUリソースやメモリをより詳細に指定できるようになった。また、Docker 1.10ではブロックI/Oに関する制限も設定できるようになっている。以下では、これらコンテナに向けたリソース制限機能について紹介する。 稼働中コンテナのリソース使用状況を確認する リソースの制

    【Dockerの最新機能を使ってみよう】Dockerコンテナで利用できるリソースや権限を制限する | OSDN Magazine
  • 無償SSLサーバー証明書Let’s Encryptの普及とHTTP/2および常時SSL化 | OSDN Magazine

    Webサイトの暗号化(SSL化、HTTPS対応)はこれまでEコマースやプライバシを守る目的で部分的に導入されてきたが、SHA1からSHA2への切り替え、モバイル端末の普及やHTTP/2の登場によって、サイト全体を常にHTTPS通信にする常時SSL化の動きが活発になっている。さらにSSLサーバー証明書を無償で入手可能なLet’s Encryptのサービス開始や主要なWebサーバーソフトウェアの安定版でHTTP/2が利用できるようになったことでその動きは加速している。稿ではSSL化を取り巻く最近の状況を整理し、NginxとLet’s EncryptによるHTTP/2&SSL化の実装例も紹介していく。 これまで証明書の無償入手は限定的 HTTPSのWebサイトを運用するには通常、商用の認証局にSSLサーバー証明書の発行を申し込み、必ず費用が発生するものだった。一部限定した目的では無償で利用でき

    無償SSLサーバー証明書Let’s Encryptの普及とHTTP/2および常時SSL化 | OSDN Magazine
  • 「docker import」コマンドでDockerコンテナをゼロから作る | OSDN Magazine

    Docker向けのコンテナを公開するDocker Hubでは多数のコンテナが公開されており、これらをベースにして独自のコンテナを作成できる。しかし、新規に独自のコンテナを作成したい場合もあるだろう。今回は、Dockerコンテナにおけるファイル/ディレクトリ情報の格納方法について解説するとともに、新規にコンテナを作成するのに必要な作業手順を紹介する。 Dockerにおける一般的なコンテナ作成手順 Dockerではよく使われるOS環境を含むコンテナがあらかじめ用意されており、それをベースに独自のコンテナを作成できる。しかし、公開されているコンテナではなく、ゼロからコンテナを構築したいという場合もある。 たとえばコンテナを公開できるリポジトリサービス「Docker Hub」で提供されている公式のCent OSのコンテナでは、ファイル容量削減のためか一部のファイルが削除された状態になっており、それ

    「docker import」コマンドでDockerコンテナをゼロから作る | OSDN Magazine
  • Bash&シェルスクリプトを極めるテクニックまとめ | OSDN Magazine

    UNIXやLinuxのエキスパートになるのに避けて通れないのが、Bashに代表されるコマンドラインシェルによる操作だ。そこで記事では、「Bashのカスタマイズ」「シェルスクリプトの高等テクニック」「Bash以外の高機能シェル」の3つについて、SourceForge.JP Magazineで過去に掲載された解説記事を紹介する。 Bashをカスタマイズして使いこなす Bashは非常にカスタマイズの幅が広く、またちょっとした改良や簡単なシェルスクリプトの利用により、大きく作業効率が改善する。ここでは、Bashのカスタマイズテクニックを解説する記事を紹介する。 コマンドラインでシェルのエイリアスと関数を使って作業を効率化する GNU/Linuxシステムを最大限に活用するには、やはりコマンドプロンプトとシェルスクリプトへの習熟が欠かせない。とはいえ、そうした処理はなるべく手早く済ませたいものだ。

    Bash&シェルスクリプトを極めるテクニックまとめ | OSDN Magazine
  • さまざまなログをまとめて集中管理できるログ記録/管理ツール「fluentd」 | OSDN Magazine

    大規模なサービスを運用する場合、それらのログ管理をどうするか、というのが1つの問題となる。複数のマシンにログが分散すると、その管理や活用が面倒になるからだ。また、クラウド環境ではサーバーのリブートによってローカルのストレージが失われる場合がある。このような場合、別のマシンにログを転送するような仕組みが求められる。今回はこういった場合に有用なログ記録・管理ツール「fluentdを紹介する。 さまざまな方法でログを収集できるfluentd 今回紹介するfluentdは、Treasure Dataが開発するログ収集管理ツールだ(図1)。オープンソースで公開されており、Linuxや各種UNIXで動作する。 図1 fluentdのWebサイト ログ収集のためのソフトウェアとしてはsyslogdやsyslog-ngなどが有名だが、fluentdがこれらと異なる点としては、以下が挙げられる。 さまざまな

    さまざまなログをまとめて集中管理できるログ記録/管理ツール「fluentd」 | OSDN Magazine
  • Docker管理を容易に、オープンソースの管理ツール「Panamax」が登場 | OSDN Magazine

    データセンター事業を行っている米Centurylinkは8月12日、Docker環境の管理ツール「Panamax」をオープンソースソフトウェアとして公開した。複雑なコンテナのデプロイをテンプレートを利用して容易に行えるという。 Panamaxはコンテナを使ってクラウドインフラストラクチャを構築するツール。Dockerを利用しているという同社の開発チームが、9か月の開発作業を経て公開した。Dockerを使って複数のコンテナやサーバーを組み合わせた環境を構築する場合、開発者はさまざまな新しい技術を学んで選択したうえ、さらにDocker専用の知識やベストプラクティスを習得する必要があった。PanamaxはDockerコンテナの構築や設定とベストプラクティスを組み合わせることで、このプロセスを不要とするという。なお開発チームによると、PanamaxはあくまでDocker管理ツールであってPaaS環

    Docker管理を容易に、オープンソースの管理ツール「Panamax」が登場 | OSDN Magazine
  • ネットワーク/ストレージの処理能力をチェックするためのベンチマークツール | OSDN Magazine

    サーバー上でさまざまなサービスを構築する前に、そのサーバーの処理能力を把握しておくことは重要だ。特にネットワークの帯域やストレージの速度といったリソースはサービスの品質に大きく関わってくる。そこで、今回はこれらの性能を調査するためのベンチマークツールやその使い方を紹介する。 ネットワークの性能を調査するベンチマークツール まずはネットワーク関連の性能を調査するベンチマークについて紹介しよう。ネットワークの性能といっても、その指標は次のように複数ある。 スループット(速度、帯域幅) レイテンシ(遅延) パケットロス(損失パケット) まず1つめは、スループット(ネットワークの速度)だ。帯域幅などとも呼ばれるが、ネットワークの性能としてもっとも重視されるのはこれだろう。ネットワークの速度が早ければそれだけ多くの情報をやり取りできるし、またより多くの接続に対して迅速に反応できるようになる。通常スル

    ネットワーク/ストレージの処理能力をチェックするためのベンチマークツール | OSDN Magazine
  • 独自のRPMパッケージやyumリポジトリを作ってみよう | OSDN Magazine

    Red Hat系のLinuxディストリビューションでは、RPMパッケージという形式でソフトウェアが配布されており、yumコマンドを利用してパッケージをインストールしたり、アップデートを行うことができる。今回は既存のRPMパッケージをカスタマイズして独自のパッケージを作成したり、独自のyumリポジトリを作成してパッケージ管理を行う方法を紹介しよう。 プライベートyumリポジトリを活用してサーバーをデプロイする Ret Hat Enterprise LinuxやCentOSといったRed Hat系のLinuxディストリビューションでは、RPMパッケージ(ファイルの拡張子は.rpm)を使ってソフトウェアをインストールするのが一般的だ。 RPMは「RPM Package Manager」の略で、Red Hatが開発したことから当初は「Red Hat Package Manager」と呼ばれていた。

    独自のRPMパッケージやyumリポジトリを作ってみよう | OSDN Magazine
  • Linux Virtual ServerとKeepalivedで作る冗長化ロードバランサ | OSDN Magazine

    多数のクライアントがアクセスするような負荷の高いサービスや停止させられないサービスを運用する場合、複数のサーバーを使ってサービスの負荷分散や冗長化を行うのが一般的だ。記事では、「Linux Virtual Server(LVS)」を使ってこのような構成を実現する方法について紹介する。 Linuxサーバーをロードバランサにする「Linux Virtual Server」(LVS) 最近では多数のCPUコアを持つサーバーが安価で利用できるようになり、サーバー1台の処理能力は飛躍的に向上している。しかし、リクエストの処理に多くのリソースを使用するようなサービスや、短時間に多数のリクエストを処理する必要があるサービスでは、1台のサーバーだけでは処理能力が不足する場合がある。このような場合、複数台のサーバーで同じサービスを運用し、ロードバランサを使ってリクエストを振り分けることで負荷の分散を図るこ

    Linux Virtual ServerとKeepalivedで作る冗長化ロードバランサ | OSDN Magazine
  • JavaScriptでJavaやPHPのようなオブジェクト指向プログラミングを可能にするライブラリ「dejavu」 | OSDN Magazine

    ポルトガルのオープンソースプロジェクトインキュベーター、Indigo UnitedがJavaScriptPHPJavaのようなオブジェクト指向プログラミングを可能にするためのライブラリ「dejavu」を公開している。PHPJavaでのオブジェクト指向プログラミングに慣れ親しんだ開発者がJavaScriptに移るのを支援するという。 JavaScriptのプロトタイプ型継承はパワフルで柔軟性があるが、オブジェクト指向プログラミングを利用する開発者にとって移行は簡単ではないという問題に着目、dejavuはこれを解決するためのJavaScriptライブラリとなる。 dejavuを利用することで、JavaScriptでクラス機構やインターフェイス機構、Mixin、静的メンバ、PrivateとProtectedメンバ、定数、コンテキストバインド、メソッド署名検証などが利用可能となる。requi

    JavaScriptでJavaやPHPのようなオブジェクト指向プログラミングを可能にするライブラリ「dejavu」 | OSDN Magazine
  • Gitを使いこなすための20のコマンド | OSDN Magazine

    LinuxカーネルやRuby on RailsPerlなど、近年多くの大規模プロジェクトで採用されているバージョン管理システムが「Git」だ。Gitには非常に多数のコマンドが用意されているが、日常的に使用するコマンドは20個程度と言われている。記事では、Gitを使いこなすために覚えるべき20個のGitコマンドを紹介する。 LinuxカーネルやRuby on RailsPerlなど、近年多くの大規模プロジェクトで採用されているバージョン管理システムが「Git」だ。Gitには非常に多数のコマンドが用意されているが、日常的に使用するコマンドは20個程度と言われている。記事では、Gitを使いこなすために覚えるべき20個のGitコマンドを紹介する。 なお、Gitの基的な考え方や使い方については分散バージョン管理システムGit入門でも紹介しているので、そちらも参照してほしい。

    Gitを使いこなすための20のコマンド | OSDN Magazine
  • JavaScriptでWebアプリを開発できる「Node.js」活用入門 | OSDN Magazine

    昨今注目を集めているWebアプリケーションプラットフォームの1つに、「Node.js」 がある。Node.jsはJavaScriptでWebアプリケーションのサーバーサイドプログラムを実装できる技術で、高いスケーラビリティが特徴だ。記事ではNode.jsの基的な知識やフレームワーク「express」を用いたWebアプリケーション作成方法を紹介する。また、Webブラウザ上で動作するIDE「Cloud9 IDE」を用いてNode.jsアプリケーションをWindows Azureで実行させる方法についても解説する。 JavaScript、そして非同期・シングルスレッドで注目を浴びるNode.js Node.jsはJavaScriptでWebアプリケーションのサーバーサイドプログラムを実装できる技術で、開発プロジェクトのスタートは2009年と、比較的その歴史は浅い。しかし、ここ数年でプロジェク

    JavaScriptでWebアプリを開発できる「Node.js」活用入門 | OSDN Magazine
  • 1