huruyosi’s blog

プログラミングとかインフラとかのメモです。

spring boot その6 - hot deploy

実装したソースは https://github.com/huruyosiathatena/springboot/tree/bf14db6cee0c0eba88894932722a514053f49bbd にあります。 再起動せずにjavaのソースコードの変更を反映 小さな修正を行う都度にjavaを再起動するのは手間なので pom.xmlを編集してhot…

UltraMonkey-L7 の sslproxy に Logjam 対策を行う

Firefox ver39 で サイトにアクセスできなくなってしまった。 Firefox でアクセスすると SSL received a weak ephemeral Diffie-Hellman key in Server Key Exchange handshake message. (エラーコード: ssl_error_weak_server_ephemeral_dh_key) というエラ…

spring boot その5 - SB Admin2 を組み込む

実装したソースは https://github.com/huruyosiathatena/springboot/tree/4589c56c81f9907a55356d44704a3ff08235fe39 にあります。 レイアウトを SB Admin2 に変更 レイアウトでもう少し楽するために SB Admin2 を組み込みます。2015年8月2日時点でSB Admin2…

spring boot その4 - Thymeleaf の layout を利用して、 ページ固有の title、meta、 style、script タグを出力する

実装したソースは https://github.com/huruyosiathatena/springboot/tree/3cf89896ff8e272b437f988f1c39f2d4a988be0e にあります。 layoutを使って 主コンテンツ以外を出力する 一つ前の記事で Thymeleaf のlayoutを使いました。 spring boot その3 - テンプ…

spring boot その3 - テンプレートエンジンの Thymeleaf を組み込む

実装したソースは https://github.com/huruyosiathatena/springboot/tree/db743062dad8411906e959d00e3326c4249ca50f にあります。 view に Thymeleaf を使う Tthymeleaf を利用して、 前回( spring boot その2 - bootstrapを組み込んで静的なページを表示す…

spring boot その2 - bootstrapを組み込んで静的なページを表示する

実装したソースは https://github.com/huruyosiathatena/springboot/tree/7841b5ca6c45bbbe0ca326d9eb2e98ea9c79a511 にあります。 TODO 直す css を考えるのは得意ではないので Bootstrap にたよる これから先の画面レイアウトやデザインなどで悩むことが無…

spring boot その1 - プロジェクト作成

実装したソースは https://github.com/huruyosiathatena/springboot/tree/f885430ac57db879e58cf281c75bec85a6dedac1 にあります。 Hello world web アプリケーションを作成して hello world を目指します。 ほぼ、コピペです。 spring-boot - Spring Bootで…

spring bootを試していく

やっていくこと webの画面を作る twitter boot strapを組み込む テンプレートエンジンに Thymeleaf を組み込む spring-boot-starter-security を使って CSRF対策 Spring Data JPA でデータベースアクセス MySQLにアクセス Flayway を利用してマイグレーショ…

linkstationの管理画面にsshのportforwardで接続する

遠隔地の実家にある linkstationのことを考えると管理画面にアクセスする必要性が出てくるかもしれません。 ssh + rsyncでバックアップが行えるようになったので、同じ仕組みを使ってwebの管理画面にアクセスします。 $ ssh -t -L 8080:localhost:9999 ls220…

linkstationのバックアップ その5 rsyncに変更【決着】

方針変更 Amazon Glacierをつかったバックアップは、いざという時のリカバリーコストがかかり過ぎるので廃案になりました。 リンクステーションのバックアップ その四【断念】 - huruyosi’s blog 変わりに自宅から rsyncを行いバックアップします。 構成 rsy…

lucene の インデックスを確認する

前回の記事でインデックスを作成したものの、意図した通りに作成できているのかを確認することができません。 使うツール Luke (http://luke.googlecode.com/svn/)があります。しかし、4.xに対応していないので、対応したものが GitHub にあがっています。 t…

Apache lucene で名寄せを実現する その三 luceneのインデックスを構築する

プロジェクトができたので、既存システムの商品マスタを投入してluceneのインデックスを構築します。 データ投入 テーブル作成 evolutionを利用してテーブルを作成します。作成するテーブルは既存システムの商品マスタです。 # --- !Ups drop table if exist…

Apache lucene で名寄せを実現する その二 PlayFrameworkのプロジェクト作成とtwitter bootstrapを組み込む

まずはPlay frameworkのプロジェクト作成 普通に play new nayoseでプロジェクトを作ります twitter bootstrapを組み込む 必要なファイルを取得 レイアウトの枠組みとして twitter bootstrap を導入します。 http://getbootstrap.com/getting-started/#downl…

Apache lucene で名寄せを実現する その一

やりたいこと システムを新しくするにあたり、商品のマスタデータを整理することになりました。複数の店舗で別々に管理しているので本来であれば同じ商品が別々に登録され、名称も一致していません。 各店舗のデータを集めてきて商品マスタとして一本化する…

linkstationのバックアップ その四【断念】

リンクステーションのバックアップ その三 - huruyosi’s blog の続きです。 Amazon Glacier からリストアする時には極力料金がかからないようにしたいと思います。 Glacireから S3への復元を極力無料枠に収まる様に1時間当たりに復元するデータの合計を 合計…

linkstationのバックアップ その三

リンクステーションのデータバックアップ その二 - huruyosi’s blog の続きです。 s3にバックアップする方法に目処がついたので、次はリカバリーを考えます。 バックアップできていない情報 リカバリーを考えた時に、s3からコピーした後にはファイルは復元で…

linkstationのデータバックアップ その二

リンクステーションのデータバックアップ その一 - huruyosi’s blog の続きです。 s3の動きを試しました。 アップロードの方法 このコマンドで一発です。 $ s3cmd sync --encoding=UTF-8 --recursive --delete-removed /mnt/array1/ s3://バケット名/ sync ……

linkstationのデータバックアップ その一

やりたいこと 実家に設置する予定のリンクステーションのデータをバックアップしたい。 RAID1のディスクが両方共に駄目になった場合に可能性な限りデータロストを少なくする。 前提条件 現地でのオペレーションは期待しない。 追加の機器は購入しない。 バッ…

linkstation LS220D に s3cmd をインストールする

ほぼコピペ LinkStation LS420Dにs3cmdとawscliを入れてみた - Qiitaqiita.com ssh でのログインは 別記事を参考にしてください。 リンクステーション LS220D でsshのログインを可能にする - huruyosi’s bloghuruyosi.hatenablog.com pipのインストール setu…

linkstation LS220D でsshのログインを可能にする

はじめに 容量が2Tの型番が LS220D0202 です。 RAIDにはしてあるけどデータのバックアップは欲しいです。 色々とつまづいたこと 「linkstation ssh」で検索すると出てくる記事は acp_commander.jar で /etc/sshd_config を書き換える記事がでてきます。この…

Jasper Reportのクロス集計を使った場合に、すべてのページに「ページヘッダー」を表示する

Jasper Reprotでクロス集計を行いSummary部に配置した場合に、クロス集計の結果大きくなり、用紙に収まらないいと、次ページに続きが出力されます。この場合に、ページヘッダーが出力されないので、レイアウトとして間抜けになります。 この対策はこのページ…

CentOS 5.11 に PHP5.6をインストールする

php

検索するといくつかのブログがあるのだけど、たぶん、環境依存のために変更が必要だった。 CentOS5にphp5.6をyumでインストールlabs.cybridge.jp epelとremiのパッケージリポジトリを登録 $ sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/x86_64/ep…

nginxを使って、WordPressとPlay frameworkへのリバースプロキシー

目的 サイトを運営するにあたり、製品紹介や案内などを WordPressで管理し、製品の実体を Play frameworkで実装することなりました。 一つのサイトとして見せるために、同じサーバ内で稼動している WordPress と Play framework へのリバースプロキシーをngi…

鍵認証を行い、sshのポート番号を変更する

やりたいこと パスワード認証を無効化して、鍵認証のみを有効にします。 sshdのポート番号を変更します。 環境 さくらVPSに CentOS 7.0 を Minimal Install しました。 クライアントはteratermを利用します。 SSHでリモートログインが行えます。 ファイヤー…

折れ線グラフ(XY Line Chart)の横軸に時(Hour)を表示する

目的 下の様な時間単位に集計した結果を XY Line Chartにして9時から始まり翌日の8時までのメモリを設定します。 ソースコード final XYSeriesCollection data = new XYSeriesCollection(); int n = 1; for( ReportBean row: src){ XYSeries series = new XY…

JFreeChartで作成したグラフをSVGにしてJasperReportsに反映する

目的 JasperReportsが提供するグラフの機能では、データ構造の関係で目的のグラフを作成できないと判断した。JFreeChartを直接利用してグラフを作成し、JasperReportsの Image expression に反映する方法です。 JasperReportsの出力物はpdfファイルです。 環…

wix の Bootstrapperで作成し、署名した インストーラーから msi を 取り出す方法

wix

題名のとおりです。 WIX の bootstraperでビルドした bundle に insignia.exe と signTool.exe を使って署名して出来上がった署名済みのbundle から mis を取り出します。 発端 パッチを作ろうとしたら、パッチ前の msi が必要なのだけど残していませんでし…

samba3からsamba4へ移行 bind編

chroot化について bindはchroot環境で運用を行うのが一般的ですが、samba4がdynamic update を行うおでchrootにはしない。 インストール $ sudo yum -y install bind /etc/named.confを設定 $ sudo vi /etc/named.conf //// named.conf//// Provided by Red …

samba3からsamba4へ移行 概要編

環境 移行元 CentOS release 5.3 samba3x-3.5.10-0.109.el5_8 openldap-2.3.43-3.el5 移行先 CentOS 7.0 on CentOS7.0 ( KVM) samba 4.13 (コンパイルしてインストール) bind9 (yumからインストール) ntp(yumからインストール) ネットワーク構成 192.168.11.…

samba3からsamba4へ移行 samba編

インストール samba4 $ sudo yum install -y gcc libacl-devel libblkid-devel gnutls-devel readline-devel python-devel gdb pkgconfig krb5-workstation zlib-devel setroubleshoot-server libaio-devel setroubleshoot-plugins policycoreutils-python l…