平常運転

アニソンが好き

過去記事とかは記事一覧で見れます

29歳

なった。前日まで海外(上海)に遊びに行っており、帰りの飛行機が遅延した結果家へ帰る阪急電車の中で7/23を迎えることになった。

去年はこれ。

astj.hatenablog.com

所感は去年と似ている気がするけれど、なんとなく1年(特に後半)で仕事で考えることの目線が少し変わったような、別にそうでもないような……という感じはしている。まあ働き出して5年目ともなればそういうこともあるだろう。オタクとしては年々極まってきている自覚があり、身を壊さない程度に遊んでいきたいですね、と思っている。あと楽器を弾く機会になんだかんだと恵まれたし、どうやら29歳も恵まれそうである。

そうそう、その上海にいる間に向こうの人に「学生ですか?」とか「学生さんだと思った」と言われる機会があり、若く見られて喜ぶという訳でもなく、年相応というか経歴相応の社会性がないのだなということを思ったりした……

泣いても笑っても二十代最後の1年なので遊んで駆け抜けようと思います。

docker-compose で - や _ で始まるプロジェクト名を使ってはいけない

こういうなんでもないプロジェクトがあったとする。

[astj@gemmy01 /Users/astj/sandbox/myproject]$ cat Dockerfile
FROM debian:8
[astj@gemmy01 /Users/astj/sandbox/myproject]$ cat docker-compose.yml
version: "3"

services:
  debian:
    build:
      context: .
      dockerfile: Dockerfile
[astj@gemmy01 /Users/astj/sandbox/myproject]$ docker-compose build
Building debian
Step 1/1 : FROM debian:8
 ---> ce40fb3adcc6
Successfully built ce40fb3adcc6
Successfully tagged myproject_debian:latest

ここで docker-compose のプロジェクト名を - や _ で始まるものにすると、直感的じゃないエラーメッセージを吐いて失敗する。

[astj@gemmy01 /Users/astj/sandbox/myproject]$ docker-compose -p -myproject build
Building debian
ERROR: invalid reference format
[astj@gemmy01 /Users/astj/sandbox/myproject]$ docker-compose -p _myproject build
Building debian
ERROR: invalid reference format

verbose オプションをつけて辿ると、 Docker API から 500 が帰ってきていることが分かる。そうだよねという感じ。

[astj@gemmy01 /Users/astj/sandbox/myproject]$ docker-compose -p -myproject --verbose build
compose.config.config.find: Using configuration files: ./docker-compose.yml
docker.utils.config.find_config_file: Trying paths: ['/Users/astj/.docker/config.json', '/Users/astj/.dockercfg']
docker.utils.config.find_config_file: Found file at path: /Users/astj/.docker/config.json
docker.auth.load_config: Found 'auths' section
(snip)
docker.auth.load_config: Found 'credsStore' section
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/version HTTP/1.1" 200 566
compose.cli.command.get_client: docker-compose version 1.21.1, build 5a3f1a3
docker-py version: 3.3.0
CPython version: 3.6.4
OpenSSL version: OpenSSL 1.0.2o  27 Mar 2018
compose.cli.command.get_client: Docker base_url: http+docker://localhost
compose.cli.command.get_client: Docker version: Platform={'Name': ''}, Components=[{'Name': 'Engine', 'Version': '18.03.1-ce', 'Details': {'ApiVersion': '1.37', 'Arch': 'amd64', 'BuildTime': '2018-04-26T07:22:38.000000000+00:00', 'Experimental': 'true', 'GitCommit': '9ee9f40', 'GoVersion': 'go1.9.5', 'KernelVersion': '4.9.87-linuxkit-aufs', 'MinAPIVersion': '1.12', 'Os': 'linux'}}], Version=18.03.1-ce, ApiVersion=1.37, MinAPIVersion=1.12, GitCommit=9ee9f40, GoVersion=go1.9.5, Os=linux, Arch=amd64, KernelVersion=4.9.87-linuxkit-aufs, Experimental=True, BuildTime=2018-04-26T07:22:38.000000000+00:00
compose.cli.verbose_proxy.proxy_callable: docker inspect_network <- ('myproject_default')
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/networks/myproject_default HTTP/1.1" 404 50
compose.service.build: Building debian
compose.cli.verbose_proxy.proxy_callable: docker build <- (path='/Users/astj/sandbox/myproject', tag='-myproject_debian', rm=True, forcerm=False, pull=False, nocache=False, dockerfile='Dockerfile', cache_from=None, labels=None, buildargs={}, network_mode=None, target=None, shmsize=None, extra_hosts=None, container_limits={'memory': None}, gzip=False, isolation=None, platform=None)
docker.api.build._set_auth_headers: Looking for auth config
(snip)
urllib3.connectionpool._make_request: http://localhost:None "POST /v1.25/build?t=-myproject_debian&q=False&nocache=False&rm=True&forcerm=False&pull=False&dockerfile=Dockerfile HTTP/1.1" 500 39
compose.cli.verbose_proxy.proxy_callable: docker build -> <generator object APIClient._stream_helper at 0x1049ba570>
ERROR: compose.cli.errors.log_api_error: invalid reference format

明示的にこういうプロジェクト名をつけることはないと思うけど、 docker-compose のプロジェクト名のデフォルトはカレントディレクトリの basename から決まるので、例えばディレクトリ名が - で始まる場合も同じ状況になる。

[astj@gemmy01 /Users/astj/sandbox/-myproject]$ docker-compose build
Building debian
ERROR: invalid reference format

(逆に、この場合でも安全なプロジェクト名を明示的に渡せばきちんと動く。)

[astj@gemmy01 /Users/astj/sandbox/-myproject]$ docker-compose -p mymyproject build
Building debian
Step 1/1 : FROM debian:8
 ---> ce40fb3adcc6
Successfully built ce40fb3adcc6
Successfully tagged mymyproject_debian:latest

ディレクトリ名が - で始まることも普段そうそうないような気がするが、たとえば Jenkins ではビルドプロジェクトの名前に - が入っていると、 truncate された結果こういうディレクトリが出現することがある。。以下のディレクトリは、Hoge-Foobar プロジェクトの様子である。つまり今回ハマった実例……

drwxr-xr-x 14 jenkins jenkins 4096 Jun 14 00:22 -Foobar_better_dockerfile-7R67AOHUZ25GOP2ZOFPGO2JCU7R5KFETCWFFHQJGSXNWUUACIIAA

原因が分かってしまえば納得感があるのだけれど、エラーメッセージがわかりにくいし、 docker-compose がバリデーションしてくれる訳でもないし、さらにカレントディレクトリが暗黙に使われていると非常に気付きづらい。気をつけましょう。。

YURIKA ENDO FINAL LIVE-Emotional Daybreak- に行ってきた

表題の通り、今年の5月いっぱいで引退した遠藤ゆりかさんのファイナルライブが6/1にあって、行ってきた。感想をどう文章にしようかずいぶん迷ったのだけれど、言葉足らずでも何か書いておこうかなと思ったので書いておこうと思う。

yurika-endo.com

続きを読む

THE IDOLM@STER ニューイヤーライブ!! 初星宴舞 に行っていた

1月頭のライブの話を今更するのかと言われそう。だが俺はするぞ!

2018年のイベント始めはアイドルマスター、しかも 765PRO ALLSTARS のライブとなった。ここ数年 AS 単独のライブイベントはご無沙汰だっただけに、新年一発目をこのライブで迎えられたのは本当に嬉しい。
久々の AS 単独ライブということで滅茶苦茶楽しみにしていたのと同時に久々故にどんなライブになるのか心配していたところも正直あったのだけれど、久々ゆえの特別さはありつつ、過度に特別すぎないライブだったというようにも思っている。
直近に CD をリリースしたばかりの新曲、待ち望まれながらも暖められてきたライブ初披露曲、久々に披露された曲、そして勿論定番曲といろんな観点の様々な楽しみがあり、新年のはじめを満ち足りた気持ちになるライブで迎えられてとても良かった。

www.famitsu.com

www.famitsu.com

続きを読む

BanG Dream! 5th☆LIVE Day2:Roselia -Ewigkeit- に行ってきた

バンドリ5thライブとして2日間開催されたうち、 Roselia の公演だった Day2 の話をする。

今井リサ役遠藤さんのいわば卒業公演である、という事情がこのライブを単なる Roselia の4回目の単独ライブに止まらない特別な物にしていて、実際特別なライブだったのは間違いないのだけれど、決してお別れ会に固執するのではなく、今ここまでの Roselia の積み重ねてきた集大成のライブだった。

1日目を含めてセットリストや発表情報などはこの辺にまとまっている。(1日目の感想にも同じリンクを貼った。)ライブから日が経ったのでふつうのメディアレポート的な物も上がっているかと思いきや意外と上がってこないのは何故なのか、という気もしているけど。
www.pashplus.jp

f:id:astj:20180525001018j:plain

続きを読む

BanG Dream! 5th☆LIVE Day1:Poppin’Party HAPPY PARTY 2018! に行ってきた

5/12と13にあったバンドリ5thライブに行ってきた。初日は Poppin'Party 、2日目は Roselia のワンマンライブ(+オープニングアクト)で、それぞれのバンド/ライブコンセプトが鮮やかに描き出された2日間だった。
楽日かつ話題性の高かった2日目のことが語られがちだけど、昨年8月の日本武道館での4thライブ以来のPoppin'Party の単独ライブだった1日目のことも忘れてはいけない。Poppin'Party が積み重ねてきた関係性とパフォーマンスから産まれる、ライブの名前通りハッピーと笑顔が溢れた素敵なライブだった。

2日目を含めてセットリストや発表情報などはこの辺にまとまっている。コンテンツとして読む感じではないけれど、セットリストなどの資料としてあわせてどうぞ。
www.pashplus.jp

続きを読む

レスキャッシュ生活2018 in 京都

金欠という話題ではない。

d.aereal.org

ぼくも最近現金決済が面倒でなるべく使わないようにしているのだけど、なかなかままならないのよなあという感じ。 

日常生活

現金以外のぼくの決済手段は以下の通り。外食、特に個人経営のお店で電子決済手段はなかなか使えないので現金になるというのも元エントリに同意。

  • iPhone Apple Pay
    • Quick Pay (メイン)
    • iD (控え)
  • スマートICOCA
  • クレジットカード

Apple Pay はだいたい Quick Pay が使えるのだけど、マクドナルドとかで時たま iD しか受け付けないことがあるのでサブのクレジットカードを登録してある。今思ったけどそういうときにやむなく使うなら ICOCA でもいいじゃん……

iPhone なんだからスマートICOCAじゃなくてモバイルSuicaでいいじゃんという話もあるのだけれど、会社の出張用と私用で2枚EX-ICを持っていて、それと組み合わせて電車に乗降することがあるのでモバイルSuicaだとその辺の運用が混乱しそうということで諦めてスマートICOCAを使っている。

  • モバイルSuicaとEX-ICカードを重ねての在来線↔新幹線の乗り継ぎができない
  • モバイルSuicaにEX-IC機能を付与することで私用のEX-ICを統合できるが、社用のEX-ICとの併用ができなくなる
  • その後に乗る新幹線の乗車経路によって在来線の乗車手段を切り替えられるほど器用な人間ではない

……とはいえ、社用で出張するのは年に5回もないくらいなので、年に5回改札でミスるくらいで済むのならモバイルSuicaへの移行はありかもしれない。

非日常生活

日常生活に関する話題は上に書いたけれど、それと別の問題としてバンド(やる方)やライブ(見に行く方)が絡むと尚更キャッシュレスは難しくなる。スタジオ代やチケットノルマの清算は現金ベースだし、ライブのチケット自体はクレジットカードで決済できても、2人分のチケットをまとめて買ったり買ってもらったりすることが多いのでその清算もやっぱり現金ベースになる。LINE Pay みたいなのをみんなが使っていれば話は変わるんだろうけれど。先日はライブ3公演分のチケットとグッズ代をまとめて清算したところ一気に3万円手元にやってきて豪華になった。

所感

もっとキャッシュレスにしたい〜とは思いつつ、じぶん一人で減らせる現金決済はあんまりないな〜と思っている。がんばろうじゃん。

余談

Apple Pay だと財布を出さずに決済ができるのだけれど、一応レシートをもらってマネーフォワードと後で突き合わせているので、そうすると結局レシートを収納するために財布を取り出さないといけない……