Dockerで- /etc/localtime:/etc/localtime:ro がMount Deniedを出すやつ

  • Mac OS: 10.13.3(17D47)
  • Docker for Mac: Version 17.12.0-ce-mac49 (21995)

ちょっと古いdocker-compose.ymlには結構

volumes:
  - /etc/localtime:/etc/localtime:ro

みたいな記述が入ってるんだけど、これが以下のエラーを出す。

Mounts denied:
The path /etc/localtime
is not shared from OS X and is not known to Docker.
You can configure shared paths from Docker -> Preferences... -> File Sharing.
See https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.

ということで、以下のように書くと良いっぽい。

volumes:
  # - /etc/localtime:/etc/localtime:ro
environment:
    - TZ=`ls -la /etc/localtime | cut -d/ -f8-9`

環境変数のTZに値を渡す感じ。

もともとDockerさんに時刻を渡す方法はこの二通りなんだけどちょっと前のバージョンから動かなくなってた。
Dockerの時刻 - Qiita

とりあえず誰かの参考になれば

React.jsとFirebaseを使って多人数同時クイズアプリを作ってる

これはオープンソース化しようと思ってるんだけど、ここ2年くらい新年の集まりでクイズアプリを使ってみんなで遊んでる。

今年は30問以上集まっていて、まぁそこそこ楽しめてて良い物だと思う。

株式会社オプトが作成したクイズアプリを試した話 | SteadyWorX

 

とまぁ、株式会社オプトさんが作ってくれた、フロントはReact.js、バックエンドがJavaで出来ていてWebSocketで通信するオープンソースなクイズアプリを、EC2上に設置して動かしてるんだけどちょいと気になる部分とか、問題設定の手間とかがあるので個人的にも周りでちょろっとやるにも良さげな感じに作り直そうと思って作ってるところ。

なんで

で、ちょっと前にFirebaseを使って他のユーザーとデータを共有できる仕組みを作ってみて、FirebaseのRealtimeDatabaseを使えば、

  • 問題表示のタイミング同期
  • スペック問題

あたりは一発で解決できそうだなぁと言うのがでかくて、React.jsの勉強も兼ねて書いてる(前作ってる方は終わってない)

問題の部分

うちの利用用途では問題は親族に募集していて、Google Formで募ってます。

するとCSVでDLできるので、今まではコピペしながらjsonに整形してたんだけど、そもそもこのCSV食わせる機能があれば結構楽ちんだなぁと思ってる。

だし、問題募集に使わなくても自分で管理するようにこれ使ってもいいと思うんだよねぇ。

実際に使ってもらうために

実際に使ってもらうためには、

  • JavaScriptビルド環境の構築
  • Webサーバーの知識
  • Firebaseへの登録

くらいは必要になるのでそこそこめんどくさいとは思うんだけど、いや、結構面白いんだよみんなでスマホ片手にクイズやるの!

 

その辺をモチベーションに頑張っていきます。
とりあえずCSVの読み込みが上手くいかないんですがcsvtojsonは微妙なんですかね?

 

 

そういえば書くの忘れてた

すっかり忘れてた!

一応独自ドメインでもBlogを持ってるのですが、技術系の事を書くのははてなブログにしようと思ってたのでとりあえず一本目書きます!!!

今後多分書くこととしては

とかそのへんかなぁ・・・?