NAKAMURA Minoru の日記 (2019年3月)

先月の日記(2019年02月) 今月の日記(2019年03月)
2002 | 10 | 11 | 12
2003 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2004 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2005 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2006 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2007 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2008 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2009 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2010 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2011 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2012 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2013 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2014 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2015 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2016 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2017 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2018 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2019 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2020 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2021 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2022 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2023 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2024 | 1 | 2 | 3 | 4
ホームページ | 最新のコメント50
インデックス: 食べ歩き | Java | プログラム | UNIX | 画像
最新の日記へのリンク | この日記ページをはてなアンテナに追加 この日記ページをはてなブックマークに追加
はてな ダイアリー アンテナ ブックマーク ブログ
Twitter | mixi | Facebook | slideshare | github | Qiita



3/31 (日)

Docker の REST API を HTTP 化する

Docker のコマンドはデーモンに対して UNIX ドメインソケットで接続し、REST API と同形式のコマンドを送り込むことで実行する。 そのため docker コマンドは root 権限で実行する必要があるし、同一ホスト内でしか実行できない。

root 権限以外のプロセスが docker コマンドを実行したり、リモートから実行するには docker の設定を変更する必要がある。 以下は、Docker は CentOS 7 に対して Docker CE 18.09 をインストール(2018年11月26日の日記)した前提で進める。

設定の変更箇所は /lib/systemd/system/docker.service になる。

/lib/systemd/system/docker.service
- ExecStart=/usr/bin/dockerd -H fd://
+ ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H fd://

設定変更後はデーモンがリブートする。

# systemctl daemon-reload
# systemctl stop docker
# systemctl start docker

参考

追記:12月20日

/lib/systemd/system/docker.service を修正するよりも、systemctl edit を使った方がよい(12月20日の日記)


3/30 (土)

[Movie] 劇場版レゴ・ムービー2

チネチッタで『レゴ・ムービー2』(原題: The LEGO Movie 2)を字幕版で観る。 1作目(2014年4月5日)はレゴを接着剤で固定化しようとする人間の父親がラスボスだったが、今回も男子に妹ができて兄の作ったレゴタウンは妹の襲撃を受けて…というメタ構造を持つストーリーだった。 今回もなぜか準主役のバットマンとD.C.のキャラクターが出そろい。


3/24 (日)

[Movie] バンブルビー

チネチッタで『バンブルビー』(原題: Bumblebee)の字幕版を観る。 トランスフォーマーの映画シリーズの中では妙にフュチャーされているバンブルビーが単独主演映画に。 バンブルビーはオプティマスプライムの次の司令官ホットロディマスよりも存在感が強い。 前作のシリーズ本流の最後の「トランスフォーマー 最後の騎士王」でもオプティマスプライムの後継者という位置づけだったし、バンブルビーがしゃべれるようになった以上事実上の司令官か。


3/21 (木)

[Java] Maven + JUnit でユニットテストの種類を増やす

JUnit は「カテゴリー」によってテストケースを分類し、実施するテストを分類することができる。 ただせっかくカテゴリーを設定した以上、ソースコードに手を触れずに mvn test と打つときにカテゴリーを指定して実行するということがやりたいが、やり方があまり載っていない。 とりあえず Maven のプロファイルと JUnit を組み合わせることで、コマンドラインで選択という目的は一応達成できるのでここにメモしておく。

JUnit のテストケースにカテゴリーを作るには、まずインターフェイスを定義する。

$(PROJECT)/src/test/java/jp/nminoru/foo/DefaultTest.java
package jp.nminoru.foo;

public interface DefaultTest {
}

テストの中に @Ctagory アノテーションで指定する。

$(PROJECT)/src/test/java/jp/nminoru/foo/FooTest.java
package jp.nminoru.foo;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.experimental.categories.Category;
import static org.junit.Assert.*;

@Category(jp.nminoru.foo.DefaultTest.class)
public class FooTest {

    @Before
    public void setUp() {
    }

    @After
    public void tearDown() {
    }

    @Test
    public void test() {
    }

ついぎに pom.xml を定義する。

  • maven-surefire-plugin をインストールし、その test フェーズに対して、<groups/> を定義する。 ここに実行するカテゴリーをかけるのだが、変数にしておく。
  • Maven にはプロファイルが設定できるので、デフォルト以外のプロファイル(この例では )を定義する。
$(PROJECT)/pom.xml
<project>

  <build>
    <plugins>

      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.22.1</version>
        <executions>
          <execution>
            <id>default-test</id>
            <phase>test</phase>
            <goals>
              <goal>test</goal>
            </goals>
            <configuration>
              <groups>${testcase.groups}</groups>
            </configuration>
          </execution>
        </executions>
      </plugin>

    </plugins>
  </build>

  <profiles>
    <profile>
      <id>default</id>
      <activation>
        <activeByDefault>true</activeByDefault> ← デフォルトのプロファイルは true にする。
      </activation>
      <properties>
        <testcase.groups>jp.nminoru.foo.DefaultTest</testcase.groups>
      </properties>
    </profile>

    <profile>
      <id>extra-test</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <properties>
        <testcase.groups>jp.nminoru.foo.ExtraTest</testcase.groups>
      </properties>
    </profile>
  </profiles>

</project>

Maven でテストを実行する時に -P オプションを指定することでプロファイルを指定して実行することができる。 これでカテゴリーを指定してのテスト実行が可能に。

mvn test -P extra-test

3/20 (水)

Java でミックスイン

Java は C++ を反面教師にクラスの多重継承を禁止して生まれたけど、クラスの継承は常に1つの親から派生するというルールを定めている。 ただしクラスは実装を伴わないインターフェイス(interface)を複数取り込むことができる。

しかし Java 8 から interface に対するインターフェイスメソッドにデフォルトの実装を書くことができるようになり、これを利用することで擬似的にミックスインが可能になった。 それでも interface にはフィールドは定義できないので、C++ で問題になるような多重継承は避けられるようだ。 Java 9 からは private メソッドも

  1.0 8.0 9.0
インスタンス public メソッド  
protected メソッド      
private メソッド    
クラス static メソッド  
public static final 変数

3/4 (月)

風疹の抗体検査

風疹の抗体検査を会社の付属病院で受ける。 川崎市の助成があるようで、検査は無料になる。 検査結果次第(おそらく抗体なし)で、予防接種を受けることになる。 南無三。

追記: 3/14

検査の結果が返ってきた。 免疫はあるらしく予防接種は不要とのこと。 三種混合ワクチンの効果が残っているようだ。


3/9 (土)

[Movie] 劇場版 PSYCHO-PASS サイコパス Sinners of the System Case.3 恩讐の彼方に

1作目(1月26日)、2作目(2月16日)になる。 狡噛 慎也が主役のストーリだが、シビュラシステム管轄外に出てしまったから今回はドミネーターの出番がない

(´・ω・`)
エンディングの「名前のない怪物」のアレンジ曲が美しい。


3/3 (日)

[Movie] 移動都市/モータル・エンジン

『移動都市/モータル・エンジン』(原題: Mortal Engines)は上映劇場が極端に少なくて、川崎でやってない。 神奈川だとららぽーと横浜と海老名の2館だということで、ららぽーと横浜で観る。

ららぽーと横浜は NEC の横浜事業場の跡地である。 学生時代に会社見学に来たことがあるのを微かに記憶していた。 上映までの時間にららぽーと横浜を眺めてみるが、立体駐車場やなんとなく郊外型イオンシティーを思わせるたたずまいに何とも言えない田舎を感じる。 川崎や横浜の湾岸地帯は別世界だ。

ららぽーと横浜に入っているシネマコンプレックスは TOHO シネマズだが、プレミアムシアターというのがあり全席がプレミアムシートになっている。 入口に専用のロビーもある。 豪華だ。 『移動都市/モータル・エンジン』もプレミアムシアターで上映される。

『移動都市/モータル・エンジン』の字幕版を観たが、ハウルの動く城感がすごい。


3/2 (土)

[Movie] スパイダーマン・スパイダーバース

109シネマズ川崎で『スパイダーマン・スパイダーバース』(原題: Spider-Man: Into the Spider-Verse)の IMAX 3D の字幕版を観る。 2Dと3Dのあいのこのような独特な表現形式は面白い。 久々に 3D で観てよかったと思える映画だ。


3/1 (金)

[Movie] アリータ: バトルエンジェル

チネチッタで『アリータ: バトルエンジェル』(原題:Alita: Battle Angel)を字幕版で見る。 『銃夢』の実写化だが、ヒロインの名前がガリィからアリータに変わったくらいだからストーリーも大幅に変わるのではないかと思ったが、大筋は外していない。 3部作の1作目で、少年ヒューゴ(原作: ユーゴ)が死ぬところまでになっている。 そうなると2作目は馬借戦記で、3作目はザレムが舞台になるんだろうなぁ。


先月の日記(2019年02月) 今月の日記(2019年03月)
2002 | 10 | 11 | 12
2003 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2004 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2005 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2006 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2007 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2008 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2009 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2010 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2011 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2012 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2013 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2014 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2015 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2016 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2017 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2018 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2019 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2020 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2021 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2022 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2023 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2024 | 1 | 2 | 3 | 4
ホームページ | 最新のコメント50
インデックス: 食べ歩き | Java | プログラム | UNIX | 画像
最新の日記へのリンク | この日記ページをはてなアンテナに追加 この日記ページをはてなブックマークに追加
はてな ダイアリー アンテナ ブックマーク ブログ
Twitter | mixi | Facebook | slideshare | github | Qiita


Written by NAKAMURA Minoru, Email: nminoru atmark nminoru dot jp, Twitter:@nminoru_jp