Container SIG Meet-up 2017 Fallに参加してきました
10/31に行われた、Container SIG Meet-upに参加してきました。
個人の開発環境やクラウドでコンテナを動かしたりして遊んでいて、コンテナ技術に興味を持ったのがきっかけでした。「俺の環境では動く」問題を解決するために使っているだけなので、超にわかではありましたが、面白い話が聞けて良かったです。
DockerとKubernetesとRancher当たりの話から、DC/OSの話まで聞けて、自分でももう少し勉強してみようと思いました。 アプリ開発側として、
この方の話は参考になりました(話が上手いっていうのもあるが)。自分はAnsibleを使っているが、確かにべき等性保つコードが書けているかとか非常に気を使うが、そんなことしなくても、Vagrant+VirtualBoxでContainer Linux(CoreOS)のVMを一枚ラップして、コンテナで環境を作ることでWinでもMacでもどこでも同じ環境かつ継続的なアップデート対応などができるって話で、私も今からローカル開発環境を見直そうと思っている (研究室の環境も一度見直したほうがいいかもしれん...)
わかっている範囲での関連資料一覧
www.slideshare.net
www.slideshare.net
初海外(学会です)
先週は、イタリアで行われたMMEDIA2017という学会で発表してきました。
https://www.iaria.org/conferences2017/MMEDIA17.html
就活とインターンバイトと学会の準備で、非常に忙しい中、つかの間の休息という感じで、イタリアで羽を伸ばしてきました(もちろん学会も参加してました)
実は、これが私にとっての初海外だったので、海外経験が豊富な先生方と行けたのは、とてもありがたかったと思います。
今回、初の国際学会だったわけですが、これを機会に、学生の金銭事情について率直な感想を話そうと思う
今回初めて国際会議に参加して思ったのだが、とにかくお金がかかる。航空券で約20万円、学会参加費やホテル代で約15万円、その他諸々考えると、40万円近くのお金がかかる訳だ。
指導教員は、国際会議に行け行けと言う訳だが、どうも学生の金銭事情を理解していないようだった。学生カードなんて、普通は上限10万円程度で、上限なんてあっという間にオーバーしてしまう。航空券すら買えない始末だ。私は上限引き上げでなんとか対応したが、それでも、学生に40万近くの額を建て替えろなんて、普通は無理な話だ。
もちろん、学会でのお金は大学から支給されるが、それは原則後払いだったので、どうしようかと悩み、大学の会計課に相談したところ、前払い制度があるというのをそこで初めて知った。
今回は大学からの前払いの振込とクレジットカードの引き落とし日のタイミングが良かったので、なんとかなったが、この制度を知らなかったらおそらく学会にも行けなかっただろう。
このような、金銭的なバックアップ体制があることは学生にはしっかり言ってほしかったし、先生の金銭感覚で物事を進めないでほしかったというのが今回の学会参加で思ったことだった。
もちろん、英語での発表経験や海外経験は、非常に自分にとって素晴らしいものになったので、そこに関してどうこう言うことはない。
ただ、研究以外の障害になりうるものへの対応と言うものを、国際会議未経験の学生が知っているわけもないので、その辺りの理解とサポートを、今後海外に行く後輩たちに少しでもできたらいいなと思うことができた経験でした。
少し愚痴っぽくなってしまったので、最後に観光の写真でも
ベネチア。今回の会場
イタリアといえばパスタ(貝にパスタを添えてと言った感じだったが)
こちらも同じく、貝にパスタを添えた料理
カンファレンスディナーで、よくわからないけど地元の民謡的なのを聞いた
イタリアで中国人がやっている日本食料理屋というダイバーシティに溢れた店にトライしてみたが、案外普通だった
夜のメストレ。おしゃれ
宇宙科学情報解析シンポジウムに参加
Docker for Windowsでのvolumeマウント問題にぶち当たっている
Docker for mac では動くのに Docker for Windows では動かない件について
Dockerを使い始めて数か月がたつが、Docker for macでは動くのにDocker for Windowsではエラーをはいてコンテナが停止するようなものが何件かある。 そのほとんどが、volumeのマウントに関してだ。
postgresやmysqlのデータ永続化のために、ホストにマウントする際にエラーが起こる 例えば、このようなdocker-composeを起動するとする(Redmineサーバの立ち上げ)
version: '2' services: redmine: image: redmine ports: - 8080:3000 environment: REDMINE_DB_MYSQL: db REDMINE_DB_PASSWORD: example volumes: - ./redmine-data/redmine:/usr/src/redmine/files depends_on: - db restart: always db: image: mysql command: mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci environment: MYSQL_ROOT_PASSWORD: example MYSQL_DATABASE: redmine_db volumes: - ./redmine-data/db:/var/lib/mysql restart: always
これがとにかく意味不明なログをはいて止まる。 Macだと問題なく動くのにWindowsだと止まってしまう
こちらも止まる
FROM kyobad/anaconda3-alpine MAINTAINER K.Kato RUN conda install -y seaborn psycopg2 networkx\ && pip install chainer \ && conda install -y -c https://conda.anaconda.org/andrewannex spiceypy WORKDIR /root/notebook CMD ["/bin/sh", "-c", "jupyter notebook --no-browser --port=8888 --ip=0.0.0.0"]
version: '2' services: db: image: postgres restart: always environment: POSTGRES_USER: pythonist POSTGRES_PASSWORD: password POSTGRES_DB: mypyenv ports: - "5432" container_name: postgres-db volumes: - ./postgres-db:/var/lib/postgresql/data - ./docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d python: build: . volumes: - ./workdir:/root/notebook/ ports: - "8888:8888" links: - db depends_on: - db
こちらはownerが違うと怒られる。
postgres-db | HINT: The server must be started by the user that owns the data directory. postgres-db | FATAL: data directory "/var/lib/postgresql/data" has wrong ownership postgres-db | HINT: The server must be started by the user that owns the data directory. postgres-db | FATAL: data directory "/var/lib/postgresql/data" has wrong ownership postgres-db | HINT: The server must be started by the user that owns the data directory. postgres-db | FATAL: data directory "/var/lib/postgresql/data" has wrong ownership postgres-db | HINT: The server must be started by the user that owns the data directory. postgres-db exited with code 1
ほかにも、Permission deniedであったり、httpsがどうのこうのみたいなエラーをはいて止まったり、 Macで問題なく動くものがWindowsでは動かないという現象が多々見られる。 githubのissueにもこれらのことが結構上がったりしているみたいなので、まだ改善はされてない...? github.com
現状、Dockerで困りたくないならMac使ったほうが無難なのかな...
日本総研インターンシップに参加してきた
概要
日本総研のインターンシップの後半3日間に参加してきました。(IT戦略コース)
具体的な業務内容は言えませんが、プロジェクトマネージャーのような仕事内容でした
感想
プロジェクトマネージャー的な仕事内容だったので、このインターンでは全くコーディングや実装はしなかったけど、ITとしての知識は持ってて損はないなと思った。(普通に文系の学部生とかも多くて、そういった人たちはなかなかITの技術の部分に関しての基礎知識がなかったのでそこはアドバンテージとれた気がした)
いわゆるSIでいう上流工程の話だったけど、自分の研究や実装経験や知識を活かせる部分は多かったように感じた。
いろいろな業界を覗き見して雰囲気を知るって意外と発見が多い気がしていい経験になったと思う
Yahoo! JAPAN データ&サイエンス カンファレンス 2016に参加してきました
タイトルにもある通り、
に参加してきました。Twitter hashtag: #yjdsc2016
紀尾井町オフィス(真下から撮りすぎた)
企業内での研究やサービス応用についての話でした。
プログラムは、このような感じ
実際のサービス適用を視野に入れた研究だけあって、アルゴリズムもだが、システム導入した時のレスポンスの速さとかリソースとか高速化に重きを置いて話をされていることが多かった気がする。
研究以外の話だと、業績連動社食(業績がいいと、社食が割引になるというめちゃくちゃなシステム)があるというのが笑った。
ポスターセッションでは、研究の話以外に実際の仕事の話とかも聞けて面白かった (クッキーとコーヒー嗜みながら)
会場では、コーヒーやクッキーもご用意しています(=゚ω゚)ノ🍪☕️
— ヤフー採用情報/Yahoo! JAPAN (@yahoo_career_jp) 2016年11月12日
そろそろ2階で受付開始です!気をつけていらしてください😊♬#yjdsc2016 pic.twitter.com/XUpjoIiuAX
時間が少し短かったのが残念だが、超おしゃれなオフィスの雰囲気も感じれて、研究の話も聞けたので十分満足。
あと、ノベルティはこんな感じ
セミナールームの準備も完了しましたヾ(@⌒ー⌒@)ノ✨
— ヤフー採用情報/Yahoo! JAPAN (@yahoo_career_jp) 2016年11月12日
ヤフーのトートバッグはレアグッズかも…! #yjdsc2016 pic.twitter.com/HKhtWpZwK4
進捗はありません
研究室で、研究や論文執筆や後輩指導等忙しくなってきてしまって、とあるアプリの開発コンテストも断念せざるを得ないくらいM1全員が忙しくなってしまった。それもこれもBOSSが放置プレイしていると思いきや変なタイミングでわけのわからないタスクを振ってきたりとにかく思い付きで行動しないで計画性持って行動してほ(ry
でも、空いた時間を使って少しDockerの勉強を始めました。買った参考書がこれ

プログラマのためのDocker教科書 インフラの基礎知識&コードによる環境構築の自動化
- 作者: WINGSプロジェクト阿佐志保
- 出版社/メーカー: 翔泳社
- 発売日: 2015/11/19
- メディア: Kindle版
- この商品を含むブログ (3件) を見る
私みたいな雑魚プログラマーかつインフラ何それ状態の人でも入りやすい参考書だなぁと思いながら読み進めている。
試しにAnaconda、Miniconda環境をDockerfileで作って運用している。環境持ち運べる。超便利。Docker最高(単純)
もう少し勉強できたら、研究室の環境をすべてDockerで置き換えれば、新しいマシン追加したりした時に、セキュリティはやらなきゃいけないにしろ、環境構築がとても楽になる気がするので時間があればやっていきたい。時間があればね。