Archive for the ‘Mac’ Category
Docker Desktop for Mac さん、API無反応で起動に失敗しがち
Macの移行で復元してみたらOSが巻き戻った!けど残念…って話
開発環境に Macbook Pro の15インチを使用しつづけて結構な年月が経ちました。
(壊れたりで)数回ハードの変更はありましたが、OSを更新すると各プロジェクトの環境調整が必要になるということもあり、Mojave でOSの更新を止めてました。ハードが Big Sur 非対応ってのもありましたが。
このまま Intel Mac が滅びるまで添い遂げるつもりだったのですが、タッチパッドが死んでしまいハードを変更することになりました。なってしまいました。
Apple Sillicon なマシンで開発全てがどうにかなってる未来が来る前に!
そんな未来は来ない可能性も高いですけども(Windows も絡んでるんでなぁ)
愚痴でした。本題に入ります。
Mac からのリモートデスクトップ接続で日本語キーボード使う
- 2017/08/17
- murave
- Mac
- リモートデスクトップ
Docker for Mac の使用されていないデータボリュームを削除
murave@ファイルの権限絡みで -v オプションの事を調べていたら今日という日が終わりそう、です。
やりたいことは別にあったんですが、せっかく調べたのでメモを残しておきます。今回、結論は最後に書くので経緯とか読みたくない方は最後まで飛ばして下さい。
データボリュームっていうのは例えば、
$ docker run -v コンテナ上のディレクトリ名 busybox
$ docker volume create --name test-volume
などとすると、
$ docker volume ls
DRIVER VOLUME NAME
local 17e11ebb9fc56e18d99b175d77b0c37b90da561bff07d601279ab7bfc0b0f414
local test-volume
と言った感じでデータボリュームがホスト上に出来ます。
ランダム文字列な名前のほうは前記docker runのように名前未指定な場合によろしくやってくれてるわけです。問題なのが、コンテナを削除しても基本的にこれが残るってこと。
「開発用RDBをゲットだぜ」シリーズの調査中
$ docker rm -f $(docker ps -aq)
でバンバン動作しているコンテナを含めて全部削除しまくっていたのですが、datastoreのデータボリュームが残りまくっているってわけです。
消さねばならぬ。
Docker公式イメージで開発用RDBをゲットだぜ(MariaDB、Percona Server編)
まえがき
Docker公式イメージで開発用RDBをゲットだぜ(PostgreSQL編)
Docker公式イメージで開発用RDBをゲットだぜ(MySQL編)
に続き予定どおりMariaDB編をお送りします。一言で済むので結論を書くと
「公式イメージのページを読み比べたらMySQLと同じでした。ありがとうございます」
という内容です。ついでに
Docker Hub で Official縛りでMySQLを検索したらPerconaも出てきたので思い出したりした。定期的にPercona良さそうだなぁと思って名前を忘れるを繰り返す存在。
— murave (@murave) 2016年8月16日
というわけでPercona Serverの公式イメージのページも見てみたらこれもMySQLの場合と同じ扱いでしたので含めてみましたよ。
Docker for Macを使用しております。
Docker公式イメージで開発用RDBをゲットだぜ(PostgreSQL編)
- 2016/08/16
- murave
- Docker
- PostgreSQL
まえがき
Laravelでの開発時にデプロイ先はMySQLなのに手を抜いて手元の開発機ではSQLiteを使っていたら痛い目にあったりしました、muraveです。
SQLiteって結構ルーズにつかえてしまうので手元の開発でSQLite使っててMySQL運用のサーバーにデプロイするとエラーがバンバンというのが昨日から連続発生中。
— murave (@murave) 2016年7月14日
開発環境にあまり影響を与えずにサクッと開発用のRDB(Relational Database)を建てられると素敵ですね。Docker公式イメージを活用すると出来そうです。
RDBというデッカイ単語を使っていますが、自分がよく使うPostgreSQL、MySQL、MariaDBなどについて調べようと思います。MySQLとMariaDB自体はほぼ同じ扱い方ができるRDBですが、公式イメージでの扱いはどうなんでしょうね。
記事にまとめながら試していこうと思います。Docker for Macを使用しており、今回はPostgreSQLです。
Docker for Mac のDockerホストに入るには
どうしたらいいんだろう?
と方法を探していたら以下のページにscreenコマンドでttyに接続すれば良いとの情報がありました。
Docker for Mac プライベートベータを早速使ってみた! – paiza開発日誌
試してみます。
$ screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
この後、Enterすると表示が出て、moby login: にrootを入力してEnterでDockerホストに入ることができました。
添付の画像は私の場合の表示ですが、screenの設定がカスタマイズされているのでおそらく他の方とは異なります。
screen常用者の端末ではカスタマイズされていて他の人には使えないのも常ですので操作方法については別途調べるなどしてください(Ctrl-a ?でヘルプをみることができますがそもそもCtrl-aが変更されていることが多く、例にもれず私もCtrl-zにしてあります)。
私は導入していないのですがtmuxなどでも良いでしょう。たぶん。tmuxについては下記、shunの記事などをどうぞ。
OS X に byobu で tmux 環境をお手軽構築 [2015 冬版]
絶対忘れるのでメモでした。
Mac基本のキ:アプリを32ビットモードで起動する
- 2015/01/05
- murave
@murave 「32ビットモードで開く」で回避(とりあえず)。Thunderbird.appを右クリックして「情報を見る」から設定。
— murave (@murave) January 5, 2015
仕事始めの朝に食らいまいした。あけましておめでとうございます。
今回のように64ビットアプリでトラブルにあったときに32ビットモードで起動すると回避出来たりすることがありますので覚えておくといいことがあるかもしれません。
そして忘れてずっと32ビットモードで暮らしてしまうかもしれません。使えないよりはいいですけどね。
設定方法はつぶやいてるとおりですが、わかりやすいようにキャプチャとってみました。
右クリックして「情報を見る」
そして「32ビットモードで開く」にチェック。
OS X Mountain Lion セットアップ日記 4 Bazaar激闘編
激闘なんかしたくなかった。
MacOSXDownloads – wiki.bazaar.canonical.com
最新の Stable、Snow Leopard (10.6 – Python 2.6) 2.5.0 をインストールしました。
Mountain Lion 用どころか Lion 用のインストーラーもないんだよね。
でも Bazaar Explorer を起動できたので大丈夫だと思っていた、まだ幸せだった、あの頃。
地獄変
盆休み明けにコードの編集始めようリポジトリを選択したら Bazaar Explorer がぶち落ちやがった。
$ bzr explorer
QKqueueFileSystemWatcherEngine::addPaths: open: Too many open files
QKqueueFileSystemWatcherEngine::addPaths: open: Too many open files
QKqueueFileSystemWatcherEngine::addPaths: open: Too many open files
QKqueueFileSystemWatcherEngine::addPaths: open: Too many open files
QKqueueFileSystemWatcherEngine::addPaths: open: Too many open files
QKqueueFileSystemWatcherEngine::addPaths: open: Too many open files
QKqueueFileSystemWatcherEngine::addPaths: open: Too many open files
QKqueueFileSystemWatcherEngine::addPaths: open: Too many open files
〜 250行位略 〜
QKqueueFileSystemWatcherEngine::addPaths: open: Too many open files
QEventDispatcherUNIXPrivate(): Unable to create thread pipe: Too many open files
QEventDispatcherUNIXPrivate(): Can not continue without a thread pipe
zsh: abort bzr explorer
(´・ω・`)
いろいろ試してみるとターミナルから操作しても bzr-svn プラグインでエラーとなることが判明。
$ bzr log
〜 略 〜
revno: 14
committer: Junya Murabe
branch nick: trunk
timestamp: Mon 2011-05-09 19:12:41 +0900
message:
chkPassowordCharをapp_modelに移動。chkFilenameChar作成。
bzr: ERROR: exceptions.ImportError: Unable to load subvertpy extensions: dlopen(/Library/Python/2.6/site-packages/subvertpy/repos.so, 2): Symbol not found: _svn_fs__path_change2_create
Referenced from: /usr/lib/libsvn_fs-1.0.dylib
Expected in: /usr/local/lib/libsvn_fs_util-1.0.dylib
in /usr/lib/libsvn_fs-1.0.dylib
Traceback (most recent call last):
File "/Library/Python/2.6/site-packages/bzrlib/commands.py", line 930, in exception_to_return_code
return the_callable(*args, **kwargs)
File "/Library/Python/2.6/site-packages/bzrlib/commands.py", line 1141, in run_bzr
ret = run(*run_argv)
File "/Library/Python/2.6/site-packages/bzrlib/commands.py", line 673, in run_argv_aliases
return self.run(**all_cmd_args)
File "/Library/Python/2.6/site-packages/bzrlib/commands.py", line 697, in run
return self._operation.run_simple(*args, **kwargs)
File "/Library/Python/2.6/site-packages/bzrlib/cleanup.py", line 136, in run_simple
self.cleanups, self.func, *args, **kwargs)
File "/Library/Python/2.6/site-packages/bzrlib/cleanup.py", line 166, in _do_with_cleanups
result = func(*args, **kwargs)
File "/Library/Python/2.6/site-packages/bzrlib/commands.py", line 1158, in ignore_pipe
result = func(*args, **kwargs)
File "/Library/Python/2.6/site-packages/bzrlib/builtins.py", line 2895, in run
Logger(b, rqst).show(lf)
File "/Library/Python/2.6/site-packages/bzrlib/log.py", line 382, in show
self._show_body(lf)
File "/Library/Python/2.6/site-packages/bzrlib/log.py", line 412, in _show_body
lf.log_revision(lr)
File "/Library/Python/2.6/site-packages/bzrlib/log.py", line 1558, in log_revision
lines.extend(self.custom_properties(revision.rev))
File "/Library/Python/2.6/site-packages/bzrlib/log.py", line 1476, in custom_properties
lines = self._foreign_info_properties(revision)
File "/Library/Python/2.6/site-packages/bzrlib/log.py", line 1498, in _foreign_info_properties
foreign.foreign_vcs_registry.parse_revision_id(rev.revision_id)
File "/Library/Python/2.6/site-packages/bzrlib/foreign.py", line 185, in parse_revision_id
foreign_vcs = self.get(revid.split("-")[0])
File "/Library/Python/2.6/site-packages/bzrlib/registry.py", line 177, in get
return self._dict[self._get_key_or_default(key)].get_obj()
File "/Library/Python/2.6/site-packages/bzrlib/registry.py", line 74, in get_obj
self._obj = get_named_object(self._module_name, self._member_name)
File "/Library/Python/2.6/site-packages/bzrlib/pyutils.py", line 51, in get_named_object
obj = __import__(module_name, {}, {}, from_list)
File "/Library/Python/2.6/site-packages/bzrlib/plugins/svn/mapping.py", line 23, in
from subvertpy import properties
File "/Library/Python/2.6/site-packages/subvertpy/__init__.py", line 130, in
raise ImportError("Unable to load subvertpy extensions: %s" % e)
ImportError: Unable to load subvertpy extensions: dlopen(/Library/Python/2.6/site-packages/subvertpy/repos.so, 2): Symbol not found: _svn_fs__path_change2_create
Referenced from: /usr/lib/libsvn_fs-1.0.dylib
Expected in: /usr/local/lib/libsvn_fs_util-1.0.dylib
in /usr/lib/libsvn_fs-1.0.dylib
bzr 2.6b2 on python 2.6.7 (Darwin-12.0.0-x86_64-i386-64bit)
arguments: ['/usr/local/bin/bzr', 'log']
plugins: bash_completion[2.6b2], bzrtools[2.5.0], changelog_merge[2.6b2],
colo[0.4.0], email[unknown], explorer[1.3.0], fastimport[0.14.0dev],
git[0.6.8], keychain[0.1.0], launchpad[2.6b2], loom[2.2.0],
netrc_credential_store[2.6b2], news_merge[2.6b2], pipeline[1.4.0],
po_merge[2.6b2], qbzr[0.23.0], rewrite[0.6.3], svn[1.2.2], upload[1.1.0],
weave_fmt[2.6b2], xmloutput[0.8.8]
encoding: 'utf-8', fsenc: 'utf-8', lang: 'ja_JP.UTF-8'
*** Bazaar has encountered an internal error. This probably indicates a
bug in Bazaar. You can help us fix it by filing a bug report at
https://bugs.launchpad.net/bzr/+filebug
including this traceback and a description of the problem.
中央リポジトリは Subversion なので死活問題。
解決編
bzr-svn
先に解決したのは bzr-svn。こいつのエラーが原因で explorer も落ちてるのかも?と思っていたので(違ったのですが)先に対処しました。
エラーメッセージを読むと subvertpy でエラーが出ています。調べると Mercurial でも Mountain Lion で Subversion 連携が動作しなくなったとの情報などありました。
JavelinDev ブログ: Mountain Lionでpython関係のライブラリが動かなくなったのを復旧した手順
bzr-svn も subvertpy でエラーが起きているので入れなおすことにしました。インストールの邪魔になるので、まず、元のファイルをどかします。消すのは怖いので mv しました。
$ sudo mv /Library/Python/2.6/site-packages/subvertpy ~/
$ sudo mv /Library/Python/2.6/site-packages/subvertpy-0.8.10-py2.6.egg-info ~/
そしてインストール。
$ sudo easy_install-2.6 subvertpy
bzr-svn 復活!
$ bzr commit
Committing to: svn+http://###.###.###.###/##/#######
modified app/controllers/jobs_controller.php
/Library/Python/2.6/site-packages/bzrlib/plugins/svn/commit.py:252: DeprecationWarning: bzrlib.revisiontree.InventoryRevisionTree._get_inventory was deprecated in version 2.5.0.
for child_name, child_ie in base_tree.inventory[file_id].children.iteritems():
/Library/Python/2.6/site-packages/bzrlib/plugins/svn/commit.py:703: DeprecationWarning: bzrlib.revisiontree.InventoryRevisionTree._get_inventory was deprecated in version 2.5.0.
return self.old_tree.inventory[file_id]
/Library/Python/2.6/site-packages/bzrlib/plugins/svn/commit.py:685: DeprecationWarning: bzrlib.revisiontree.InventoryRevisionTree._get_inventory was deprecated in version 2.5.0.
old_ie = self.old_tree.inventory[file_id]
/Library/Python/2.6/site-packages/bzrlib/plugins/svn/commit.py:303: DeprecationWarning: bzrlib.revisiontree.InventoryRevisionTree._get_inventory was deprecated in version 2.5.0.
base_tree.inventory[child_ie.file_id].parent_id != child_ie.parent_id):
/Library/Python/2.6/site-packages/bzrlib/plugins/svn/commit.py:364: DeprecationWarning: bzrlib.revisiontree.InventoryRevisionTree._get_inventory was deprecated in version 2.5.0.
base_tree.inventory[child_ie.file_id].parent_id != child_ie.parent_id):
Committed revision 83.
commit 時に非推奨ワーニング(DeprecationWarning)がでたりしてますが動作しているようです。
Bazaar Explorer
Bug #926439 “Can’t open project in GUI “Too many open files”” : Bugs : Bazaar Explorer
の #9 にあげてくださってる workaround-926439.patch で解決しました。
$ cd /Library/Python/2.6/site-packages/bzrlib/plugins/explorer
$ sudo patch -p0 -b < ~/Downloads/workaround-926439.patch
ここにたどり着くまで、長かった。
調べたりやってみたりしたけどたぶん無駄だったこと
プリインストールの Python が2.7系も入るようになったので(Lionから?)2.6系を使用している Bazaar が動かなくなるという不具合が過去に発生していたようです。コードを見たところこの不具合への対処は入っていました。
Bazaar Explorer が落ちる件、ダウンロードページに「 QT をバージョンアップしてみなよ」とか書いてあるので QT の再インストールを何通りかの方法でやってみましたが症状は変わりませんでした。結果的に Homebrew で入れた QT を使用している状態ですが今回のエラー対処には影響していないとおもいます(たぶん)。
こんな状態だと Bazaar 、オススメできないなぁ。