2016

docker-composeで既存のnetworkに接続する

docker-composeを利用してコンテナを起動した場合、通常だとdocker-compose.yml(プロジェクト)単位で 内部ネットワークが作成される。これを、例えば別のdocker-compose.ymlファイルから起動されたコンテナのnetworkの中でコンテナを作成するには、network設定をdocker-compose.yml内に記述する 既存のネットワークの一覧 $ docker network ls コマンドを実行すると、以下のようにネットワークの一覧が表示される。例ではexisting_nw_defaultに接続するとする。 $ docker network ls NETWORK ID NAME DRIVER a36b706eb5a6 bridge bridge 7ee0cd187fbd host host 39be267aeb70 existing_nw_default bridge bb39f75ad969 none null 既存のネットワークに接続するdocker-compose.ymlの例 デフォルトでexisting_nw_default内にコンテナを作成するには、docker-compose.yml内に以下のようなnetworkの記述を追加すれば良い。…

Bloggerでシンタックスハイライトを利用する

code-prettifyを利用する方法。 https://github.com/google/code-prettify (1)ブログ管理画面の”Template”から、テンプレートのHTMLを編集する。 haedタグの中に以下を記述する。 <script src='https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?skin=sunburst'/> (2)シンタックスハイライトを利用したい部分を、以下のタグで囲う。 <pre class="prettyprint"> (任意のコード) </pre> classに、追加で”lang-*”を指定すると対象言語を明示的に指定できる。lang-*の”*”の部分にはデフォルトで以下が利用できる "bsh", "c", "cc", "cpp", "cs", "csh", "cyc", "cv", "htm", "html", "java", "js", "m", "mxml", "perl", "pl", "pm", "py",…

Raspbianでpyenv環境を構築する

Raspbian環境をアップグレードしたついでにpyenv/pyenv-virtualenv環境を構築しようとおもいました。その際、pyenvを使ったpythonバージョンのインストールでエラーが出たので、その構築メモです。 0.環境 記事執筆した時点で、 $ sudo aptitude safe-upgrade した状態です。 日本語環境を入れたりはしてるので、かならずしもデフォではないです。 $ uname -a Linux raspberrypi 4.4.34+ #930 Wed Nov 23 15:12:30 GMT 2016 armv6l GNU/Linux 1.エラー 以下のようにreadlineとかbzip2とかいかにも必要そうなものがないとか怒られます。 $ pyenv install 2.7.12…

Raspbian with PIXEL閑環境で日本語環境の構築

Raspberry Piの情報を細かく追っているわけではないので、知らない間にバージョンアップしてPIXELというデスクトップ環境になっていました。正確には、深く考えずにsudo aptitude sage-upgradeして再起動したらいきなり変わっていてびびった。 ながらく初期インストールだけして放置していたRaspberry Pi初代(+ですらない!)を日本語かするときにPIXEL 以前の情報が多かったので、PIXEL環境で日本語入力ができるようになるまでのメモです。結論からいうと、すごく簡単になっているみたいです。 日本語フォントのインストールPIXELな環境からは初期で表示できるのかも?という情報もみたのですが、それをみたのがフォントをインストールした後でした…。まあ、減るもんでなしという感じでインストールしました。タカオフォントというのはIPAフォントの派生みたいです。 $ sudo aptitude install fonts-takao fcitx-mozc(インプットメソッド)のインストール界隈のブログ記事ではibus-anthyとかibus-mozcを入れてるケースが多かったけど、しらべるとibusは最近はあまりイケてなくてfcitxという系列が良いみたいなので、そちらを採用してみることにしました。なお、ibusとかfcitxというのがベースになるインプットメソッドで、変換エンジン(?)自体がAnthyとかmozcとか、という構成になるようです。なので選択肢としては、インプットメソッドとしてfcitxかibus、それぞれでの変換エンジンとしてanthyかmozcか、という考え方になるようです。このへんは正直よくわからん。 $ sudo aptitude install fcitx-mozc上記で、メインメニューの「設定」のところに「fcitx設定」とか「mozc設定」とかの項目が追加されるので、そこで諸々を設定します。(ターミナル上でim-configを実行する必要があるかもしれない) 日本語ターミナル(不要っぽい)上記同様にjfbtermというのを入れないとターミナルで日本語が出ないよ、という記事が多いのですが、PIXEL環境では不要でした。標準のターミナルはLXTerminal 0.2.0というやつでした。 あとはPIXEL以前の環境と同様、ロケールやタイムゾーンの設定、あとはフォントを上述のTAKAOフォントに変えてあげたりすればOKです。

Android Things on Raspberry pi3でディスプレイを反転させる

Android ThingsのRaspberry pi用OSイメージで RasPi3を起動した際、Raspbianのときと同じように、 純正の7inch touchscreenの構成では画面を反転させないとUSBコネクタが 邪魔になってしまうという状況が発生しました。 Raspbianの場合なら、/boot/config.txtの中にlcd_rotate=2という記述を追記して際kどうすれば解消するのですが、それのAndroid Thingsでのやり方。stackoverflowに聞いたらすぐに回答してくれる人が現れました。すごい。ありがとう。 例えば、sdカードのデバイスが/dev/sdbだとした場合、ブートパーティションは/dev/sdb1になるようです。なので、母艦となるpcなりでこのパーティションを マウントしてあげると、その中にconfig.txtというファイルがあるので、 この中にlcd_rotate=2という設定を追加してあげて再起動すればよろしい。 $ sudo mount /dev/sdb1 /mnt/disk $ echo ‘lcd_rotate=2’ >> /mnt/disk/config.txt 私はmacを使っていてext4のファイルシステムをマウントするのにFUSE for macなどの セットアップが必要そうだったんだけど、これが時間かかるのでたまたまvirtualboxに 設定してあったboot2dockerのOSイメージを起動して、これでマウントしてやっつけました。 教えてくれた人によるとこれはhackみたいなもんでオフィシャルな設定とか機能ではないから、アップデートのたびにやらないといけないよ、だから機能リクエストしたほうが良いよ、とのこと。とはいえ、いったんのworkaroundとしては十分です。 http://stackoverflow.com/questions/41165198/android-things-with-rasp3-7-inch-touchscreen/ その後…

pyenvとpyenv-virtualenvで任意のpython環境に切り替える(homebrew使用)

pyenvを使って任意のPythonバージョンを利用できるようにする。 さらに、pyenv-virtualenv(pyenvのプラグインということらしい)で、同一のPythonバージョン化でも任意のpython実行環境が管理できるようにする。これはpipとかでライブラリをインストールする場合に便利だろう。 homebrewを使ってインストールすることにする。 pyenvのインストール$ brew install pyenv pyenv-virtualenvのインストール$ brew install pyenv-virtualenv インストール自体は上記で終了。続いてPATH環境変数などを書き換える必要があるが、これは初期設定のスクリプトファイル(zshなら.zshrc)に以下の行を追記すれば良い if which pyenv > /dev/null; then eval “$(pyenv init -)”; fiif which pyenv-virtualenv > /dev/null; then eval “$(pyenv…

USBのHDMIアダプタについての記事

USB接続のディスプレイアダプタは使ったことがなかったので、MacBook Proでの利用検討をきっかけにいろいろと調べています。 疑問だったのがUSB 3.0接続のマルチポートアダプタに多いのがHDMI 1.4対応で、USB 3.0の帯域幅が約5Gbpsなのに対してHDMI 1.4の帯域幅が10Gbps(4k)、普通に考えてUSB 3.1 (gen2)でも帯域幅足りないじゃないか!と思ってたんですが、とてもわかりやすい記事を見つけたのでリンク。 「USBディスプレイアダプタの特徴を考慮してパソコンとディスプレイをUSB経由で接続する」http://www.webmagazine.kakisiti.co.jp/?p=550 DisplayLinkという会社のパーツが使われることが多いそうで、帯域幅については(詳細はともかく)納得。でもこれだと遅延が少なからずありそうだし、動画など動きが激しいものでフレームが落ちることがあるというのも納得したので、これでFPSのゲームするとかは無理があるのかもしれず、外出時などの一時用途に割り切って考えた方が良いのかもしれない。 たぶん以下みたいなパターン のUSB-CコネクタでDisplayPortプロトコルを使ってると明記しているパターンのほうがレイテンシとかは有利なんだろうけど、これはどうやって見分ければいいのか…Thunderbolt3接続となってるのを選べば良いのか。 ということは、前の記事でいうとThunderbolt3接続のこれ が、USBアダプタタイプでないものなんだろうと思う。でも新型MacBook Proは既存のThunderbolt 3端末に非対応(http://iphone-mania.jp/news-143363/)という情報もあるようだしやっぱり目をこらして調べるしかないのかこれは。

MacBook Proと合わせて選ぶべきマルチポートアダプタ6選

先日発表されたMacBook Pro (2016)モデルの購入を検討しているのだけど、とりあえず目玉のTouch Barは実物を見てみて見送りが良い気がしてきたので、タッチバーなしモデルの方向で検討している。そうすると気になるのがUSB-Cポートが2つしか無い点で、できるかぎり効率的にUSB-Cポートを使いたい。ということでマルチポートのアダプタを物色している。 選定のコンセプトとしてはMacBook Pro (2016)のタッチバーなしモデルはThunderbolt 3ポートが2つあるとして、マウスなどの軽いっぽいインターフェースは一つのポートにまとめて、外部ストレージなどの帯域が必要なデバイス用に一つポートが開けられる状態にしたい。ということで: ・HDMI:必須 ・USBタイプA複数:必須 ・(できれば)有線LANポート:頻度は高くないと思うので、最悪USBポートからの孫アダプタでも良いと思う ・(できれば)SD/microSDカードリーダー:これも頻度は高くないので、最悪USBポートからの孫アダプタでも良いと思う。マイクロSDはSDカードのアダプタがあるので割とどうでもいい ・(できれば)充電用の入力ポート:上述の理由で一つは使わない状態で成立させたい ・1万円以下ぐらい ・持ち運びを考えて軽いのが良い。 ・たぶんホスト側の接続はUSB3.1が良い。(2016/11/29追記)ディスプレイ接続に限ればThunderbolt3(Displayport)接続のほうが良い。 USB 3.0が5Gbpsなのに対してUSB 3.1が10Gbps、Thunderbolt3に至っては40Gbpsの転送速度なので、マルチポートである性格上、根元が早いのは困ることはないはずである。逆にホスト側がUSB 3.0の場合、子機側がUSB 3.0接続であっても最大限パフォーマンスが生かせない可能性がある(はず)。でも元々がそこまで速度を必要としない機器はまとめてしまいたいという話なので、必須ではないかもしれない。 あと価格帯からいくとUSB 3.0か3.1接続のアダプタが妥当なんだと思う。Thunderbolt 3対応のはあるっぽいけど価格が高いし、MacBook Pro (2016)のThunderbolt 3は互換性が不安という情報も見たりするので、まだ様子見のほうが良いのかもしれない(Appleがdockみたいのを出してくれればいいと思うんだけど)。 USB Type-Cポートは規格がややこしくて正確に理解できているか怪しいけれど(ちなみにこの辺を参考にした 。http://www.itmedia.co.jp/pcuser/articles/1508/25/news068.html)、上記のような基準で候補の機器をリストアップして調べてみました。

ASUSのルーターがmacから見えないときのルーター設定

前回のポストでTimeMachineのASUSのRT-AC85Uでの設定方法について書いたときにFinderに正しくルーター名が表示されない件を書いたが、たぶんルーター側の設定方法で解決できた(っぽい)のでその方法を書く。ルーターのファームウェアのバージョンは3.0.0.4.380_5971で、MacはEl Capitanです。 ASUSルーターの管理画面にログイン 左ペインの「ワイヤレス」をクリック 「プロ」のタブをクリック 各バンド(2.4GHzとか5GHzとか)で「IGMPスヌーピング」を「有効」に設定 「適用」をクリック いったんネットワークが切断され、設定が適用される 以上で、Finderにルーター名が表示されるようになるはず。無理な場合は相変わらず移動>サーバに接続…でIPアドレスを打てば良いはず。