VSCodeでリモートでPHP Debugをブレークできないのをできるようにした。 [プログラミング]
Visual Studio Codeを使って、リモートでXdebugを使うというなんともうれしい機能があったけど、ブレークポイントで止まらずハマったという話。他のサイトでスクリーンショットを使ったりして手取り足取り教えてくれているのであえてここでは、自分のVirtualBoxにつなぐ環境でこうしたら上手くいったという報告のみで。
ステップ実行できるところまではわりとすぐにいったんだけど、ブレークポイントで止まらない止まらないw。実際ググるとブレークポイントで止まらない系の記事が結構あって、そこを見たけどみんな環境が違うから設定ファイルの書いてあることがかなり違うんですよね。PHPだけじゃなくPythonとかその他の言語でもブレークポイントで止まらないとの話があって、これはVSCodeの共通の問題点なんじゃないかと。
とりあえず環境を書いておきますね。
サーバ:VirtualBox上のCentOS7
webサーバ:Apache
クライアント・ホストOS:Windows10
あとの細かいバージョンやら状況は忘れた。特定のバージョンの記事を書いているつもりはないけど、新しくなったら設定方法とかすぐに変わるからなOSSは。
Xdebugを入れるのはPECLで入れました。仕事だとソースから入れて塩漬けできるようにした方がいいんだけど、面倒なので
で入れました。
peclが入っていないときはyumで入れる。
なんというか、Ubuntuはわりとsudoでやる文化があるのですが、RedHat系はsuでrootにならないといけないサンプルが多くて、複数行をコマンドをそのまま貼り付けて実行できないんすよね。#マークが行頭にくっついてきて、率直に面倒くさい。Debian系が好きなんだけども、yumがapt並みにはなっているので大体問題ない。
それとよくMacのローカルでMAMPとかでやっているのを見ましたけど、あれはリモートにつないでないので微妙に参考にならなかったりしました。LinuxとMacという違いもあることですし。とはいえ、最大公約数的な設定の重なりは見られたので良かったのかもなと思ったり。
あと先に言ったようにPHPに限らずブレークポイントで止まらないという記事が割とあったので、いろいろな問題だけど基本的な設定で不具合が出ているのかなと感じました。まぁIDEで提供されている機能をいちエディタがやろうとしているのだから無理が来ても仕方がないかも。
Xdebugを入れたので、まずサーバ側(/etc/php.ini)の設定。なんか入れるバージョンによって設定される文字列も違うのかな? なので自分が入れた時のデフォルトの設定は書いておく。ここに一部変更したり、挿入したりしている。
いろいろあるんだけど、恐らくミニマムな設定は元々あった行に、次の行を加えれば良いらしかった。多分、最低下の行を加えないとうんともすんとも言わなかった気がする。
ただ、いろいろなところで書かれていた設定がかなり違っていたので、他のものも保険に書いておく。
多分、元々書いてあったけど必要そうな設定の一つは
それとデフォルトで指定している9000番ポートが使えないことが多いらしいので、VSCodeと同じように変える。たぶんここは予約されていないポートであれば、どちらも同じものに合わせればいいんじゃないかな。
多分、9000番でも動くんだけど、何かと競合することがあるらしく、エラーが出て動かなくなることがある。OSを再起動してすぐに使い始めると、競合することなく使えるんだけど、そのためにリブートするのもバカらしいので9000番から変えておいた方が賢い選択かもしれない。
/etc/php.d/ に設定ファイルを入れないといけないとか思ってしまうが、/etc/php.ini に設定するのも同じようなので面倒なことはしない。というか、設定が重複してどちらかに要らない設定が残ってしまいがちなのでどちらかに決めて一元化したほうがいいような気がする。
そしてわりと鬼門となるVSCodeの設定ですが、これは特に環境によって違うみたいです。つなぎ先の違いもあるし、VSCodeを入れるOSもWindowsとMacがありますしね。とりあえずPHP DebugとRemote DevelopmentのExtensionを入れて、つなぐところの手順はほかのところで見てもらうとして(手抜きw)、設定ファイルの書き方ですね。
というかSSHでつないでやるところとかは、初回と次回からのやり方が違うし、ある程度試行錯誤でやってもらわないとどうやってやるか結局迷うし。とりあえずコマンドパレットの使い方を慣れないといけない感じです。
https://qiita.com/bitcoinjpnnet/items/dc94c79bd6a69925872d
とりあえずSSHでつないでデバッグするための、launch.jsonの設定を設定します。というか、SSHのおエペレーション以外はほとんどExtensionのインストールと設定ファイルの書き方でなんとかなるレベルではあります。
左側のデバッグボタンを押して、歯車ボタンを押すと、設定のためのlaunch.jsonが出てきます。
具体的な設定は下記のようにしました。
キモとなっているのはportとstopOnEntryとpathMappingsの設定ですね。portはXdebug側と同じにすれば良くて、stopOnEntryはデバッグが始まったら先頭行で止まるようになります。そこまでは普通にできて、ステップ実行などはできます。
でも、ブレークポイントで止まらない。ググってもブレークポイントで止まらない例はたくさんあって、そこまではみんなうまく行くっぽいですね。色々他の設定をしたけど全然びくともしなくて、結局
"pathMappings"を
"${workspaceRoot}" : "${workspaceRoot}"
に設定すれば動くようになりました。正直、細かい事はわからないんですが、ここは実際のパスを設定しないといけないところなので、リモートだとこういう設定にしないといけないみたいです。ここは正しく設定しないとブレークポイントが効かないので注意しましょう。
ステップ実行ができるところまでは簡単に行くんですけど、ブレークポイントの設定はここだけっぽいので環境によって設定しないといけないみたいです。Webにある多くの環境がリモートじゃなく、ローカルであったりすることが多いので、そこはきちんと読み替えないとダメみたいです。とりあえず、SSHで他のところに繋ぐ場合はこの設定を試してみてください。少なくともデフォルトの状態では動きません。
そんなこんなでブレークポイントで止まらないところだけで困っている方は、pathMappingsをいじってみてください。他のところは他の人がやり倒しているので、ここに書いてあることをやれば大体ミニマムな設定でできていると思いますよ。まぁ無駄なことが書いてあっても大体は無害なので大丈夫なはず。
他の言語から入ってきて、PHPはステップ実行もブレークも張れないと残念に思っていましたが、やろうと思えばやれることはあるんですね。それもタダでできるのだから自己で勉強する点においては問題がない。
ステップ実行できるところまではわりとすぐにいったんだけど、ブレークポイントで止まらない止まらないw。実際ググるとブレークポイントで止まらない系の記事が結構あって、そこを見たけどみんな環境が違うから設定ファイルの書いてあることがかなり違うんですよね。PHPだけじゃなくPythonとかその他の言語でもブレークポイントで止まらないとの話があって、これはVSCodeの共通の問題点なんじゃないかと。
とりあえず環境を書いておきますね。
サーバ:VirtualBox上のCentOS7
webサーバ:Apache
クライアント・ホストOS:Windows10
あとの細かいバージョンやら状況は忘れた。特定のバージョンの記事を書いているつもりはないけど、新しくなったら設定方法とかすぐに変わるからなOSSは。
Xdebugを入れるのはPECLで入れました。仕事だとソースから入れて塩漬けできるようにした方がいいんだけど、面倒なので
sudo pecl install xdebug
で入れました。
peclが入っていないときはyumで入れる。
sudo yum install pecl
なんというか、Ubuntuはわりとsudoでやる文化があるのですが、RedHat系はsuでrootにならないといけないサンプルが多くて、複数行をコマンドをそのまま貼り付けて実行できないんすよね。#マークが行頭にくっついてきて、率直に面倒くさい。Debian系が好きなんだけども、yumがapt並みにはなっているので大体問題ない。
それとよくMacのローカルでMAMPとかでやっているのを見ましたけど、あれはリモートにつないでないので微妙に参考にならなかったりしました。LinuxとMacという違いもあることですし。とはいえ、最大公約数的な設定の重なりは見られたので良かったのかもなと思ったり。
あと先に言ったようにPHPに限らずブレークポイントで止まらないという記事が割とあったので、いろいろな問題だけど基本的な設定で不具合が出ているのかなと感じました。まぁIDEで提供されている機能をいちエディタがやろうとしているのだから無理が来ても仕方がないかも。
Xdebugを入れたので、まずサーバ側(/etc/php.ini)の設定。なんか入れるバージョンによって設定される文字列も違うのかな? なので自分が入れた時のデフォルトの設定は書いておく。ここに一部変更したり、挿入したりしている。
[xDebug] zend_extension=/usr/lib64/php/modules/xdebug.so xdebug.remote_enable=1 xdebug.remote_handler="dbgp" xdebug.remote_host="127.0.0.1" xdebug.remote_log="/tmp/xdebug.log" xdebug.remote_port=9000 xdebug.trace_output_dir="/tmp/"
いろいろあるんだけど、恐らくミニマムな設定は元々あった行に、次の行を加えれば良いらしかった。多分、最低下の行を加えないとうんともすんとも言わなかった気がする。
xdebug.remote_autostart=1
ただ、いろいろなところで書かれていた設定がかなり違っていたので、他のものも保険に書いておく。
多分、元々書いてあったけど必要そうな設定の一つは
xdebug.remote_enable=1
それとデフォルトで指定している9000番ポートが使えないことが多いらしいので、VSCodeと同じように変える。たぶんここは予約されていないポートであれば、どちらも同じものに合わせればいいんじゃないかな。
xdebug.remote_port=9001
多分、9000番でも動くんだけど、何かと競合することがあるらしく、エラーが出て動かなくなることがある。OSを再起動してすぐに使い始めると、競合することなく使えるんだけど、そのためにリブートするのもバカらしいので9000番から変えておいた方が賢い選択かもしれない。
/etc/php.d/ に設定ファイルを入れないといけないとか思ってしまうが、/etc/php.ini に設定するのも同じようなので面倒なことはしない。というか、設定が重複してどちらかに要らない設定が残ってしまいがちなのでどちらかに決めて一元化したほうがいいような気がする。
そしてわりと鬼門となるVSCodeの設定ですが、これは特に環境によって違うみたいです。つなぎ先の違いもあるし、VSCodeを入れるOSもWindowsとMacがありますしね。とりあえずPHP DebugとRemote DevelopmentのExtensionを入れて、つなぐところの手順はほかのところで見てもらうとして(手抜きw)、設定ファイルの書き方ですね。
というかSSHでつないでやるところとかは、初回と次回からのやり方が違うし、ある程度試行錯誤でやってもらわないとどうやってやるか結局迷うし。とりあえずコマンドパレットの使い方を慣れないといけない感じです。
https://qiita.com/bitcoinjpnnet/items/dc94c79bd6a69925872d
とりあえずSSHでつないでデバッグするための、launch.jsonの設定を設定します。というか、SSHのおエペレーション以外はほとんどExtensionのインストールと設定ファイルの書き方でなんとかなるレベルではあります。
左側のデバッグボタンを押して、歯車ボタンを押すと、設定のためのlaunch.jsonが出てきます。
具体的な設定は下記のようにしました。
{ "version": "0.2.0", "configurations": [ { "name": Listen for XDebug "type": "php", "request": "launch", "port": 9001, "stopOnEntry": true, "pathMappings": { "${workspaceRoot}" : "${workspaceRoot}" } } }
キモとなっているのはportとstopOnEntryとpathMappingsの設定ですね。portはXdebug側と同じにすれば良くて、stopOnEntryはデバッグが始まったら先頭行で止まるようになります。そこまでは普通にできて、ステップ実行などはできます。
でも、ブレークポイントで止まらない。ググってもブレークポイントで止まらない例はたくさんあって、そこまではみんなうまく行くっぽいですね。色々他の設定をしたけど全然びくともしなくて、結局
"pathMappings"を
"${workspaceRoot}" : "${workspaceRoot}"
に設定すれば動くようになりました。正直、細かい事はわからないんですが、ここは実際のパスを設定しないといけないところなので、リモートだとこういう設定にしないといけないみたいです。ここは正しく設定しないとブレークポイントが効かないので注意しましょう。
ステップ実行ができるところまでは簡単に行くんですけど、ブレークポイントの設定はここだけっぽいので環境によって設定しないといけないみたいです。Webにある多くの環境がリモートじゃなく、ローカルであったりすることが多いので、そこはきちんと読み替えないとダメみたいです。とりあえず、SSHで他のところに繋ぐ場合はこの設定を試してみてください。少なくともデフォルトの状態では動きません。
そんなこんなでブレークポイントで止まらないところだけで困っている方は、pathMappingsをいじってみてください。他のところは他の人がやり倒しているので、ここに書いてあることをやれば大体ミニマムな設定でできていると思いますよ。まぁ無駄なことが書いてあっても大体は無害なので大丈夫なはず。
他の言語から入ってきて、PHPはステップ実行もブレークも張れないと残念に思っていましたが、やろうと思えばやれることはあるんですね。それもタダでできるのだから自己で勉強する点においては問題がない。
タグ:PHP
Twitterまとめ投稿 2020/01/24 [Twitter]
carbonhydrat東芝は「量子暗号通信」と呼ばれる次世代の暗号技術を来年度アメリカで実用化する方針を決めました。実現すれば日本企業としては… https://t.co/B4ZPNb6bUT 東芝は技術があるが経営側がとんでもない悪手を打つから困るんだよな01/23 11:40 carbonhydratRT @sarasiru: 「ゲームよりうどん」糖尿病による死亡者が多い香川県に規制を提案 https://t.co/MnHBo51HIk “うどんを常食していない人が、他人のうどん食にケチを付けることは簡単だ。少なくとも僕は、週にうどんが3杯に制限されようと困らない。困らない…01/23 12:07 carbonhydratRT @osaka_seventeen: 「自炊は高コスト派」と「自炊は低コスト派」の間には、「とりあえず野菜二種類と豚肉を雑に炒めたものが主菜でそれと白飯のみが晩ご飯」を「自炊」に含めるかどうかという巨大な溝があると思う。あと、焼き肉のたれとめんつゆを信じろ。01/23 12:16 carbonhydratRT @otakulawyer: 「『表現の自由』を盾にしない」というパワーワードが衆院選候補者から出るとは...。日頃護憲、護憲とのたまう共産党員の憲法理解の浅薄さがよく分かるツイートであると思いますよ。 <日本国憲法21条> 集会び言論、出版その他一切の表現の自由は、これを…01/23 12:28 carbonhydratRT @tacowasabi0141: 自衛隊の日誌 日本政府「無くしました」 財務省のデータ 日本政府「半年で消えました」 桜を見る会の名簿 日本政府「即シュレッダーしました」 桜を見る会前夜祭 安倍「たまたま収支が合いました」 日本政府「マイナンバーと金融口座を紐つ…01/23 15:05 carbonhydratRT @dokuninjin_blue: フェミニストのみなさんが巨乳女性の表象に嫌悪感があることは理解しました。しかしあなた方のその嫌悪感はあなた方のものなのであって、普遍的なものでもなければ、社会的に特別な配慮を必要とする公共性を有するものでもありません。01/23 15:08 carbonhydratRT @syakkin_dama: みんなが「不快だ、社会からなくせ」って言ったとしても、「待って、それって本当に正しいの?」って問う立場がリベラルちゃうんすかね。「それやったら胸の大きい女性から広告に出演する権利を奪っちゃうよ、それって守らなきゃダメじゃない?」ってのがリベラ…01/23 15:08 carbonhydrat安倍首相の反論は 「〜という指摘は全く当たりません」 というワンパターンなのだが、 大体は説明になっていなくて相手の鋭い指摘を否定するだけ。 そんなの答弁にも何もなってないよ。01/23 21:25 carbonhydrat変なキノコとかよりかはよっぽど効きそうだな。にしてもアラビックヤマトw https://t.co/gH5Ng1reNH01/23 21:31
2020-01-24 05:01
コメント(0)
Youtubeが動画・音楽ダウンロード不可になったっぽい。 [web]
Youtubeからは貴重な音源とかがあるので、Firefoxのアドオンとかで音楽を落としていた。mp4の動画を落としていた時があったんだけど、結局音楽としてしか聴いていないことも多かったので、AACを落としてきてMacでMP4コンテナにフォーマットを変えてiTunesで聴いていた。
つい先日、どの音楽を落とそうとしてもツールが動かなくなっていた。それまでもYoutubeの改変で使えなくなっていたりはしたんだけど、そこまで問題が出ることはなくツールの方も追いついていた。
そしてそのうち、商業的にやっているビデオが落とせなくなっていた。まぁ普通は落とせないようにしちゃうよなと思うんですが、個人的に上げているものは今まで通り落とせていました。今回は全体に及ぶようで、動画も音楽だけも落とせなくなっていた。なんてこったい。
YouTube Video and Audio Downloader (Dev Edt.)というアドインも
と出ていて、システムの構造的に大改変があった模様。対応できればそれを待たねばなるまい。YoutubeだけならJavaScriptで相当面倒なことをやっていても、暗号化でもされない限りは対応できそうだけどね。
他のサイトでもWebブラウザの開発ツールで、mp4ファイルが落とせたり落とせなかったりしていたので、そこは技術的に取れなくしたりはできるのだろうなとは思っていた。しかし、今までYoutubeは大丈夫だと思っていたのだけれど、これではかなり厳しい。まぁ公共インフラ的な位置を占めたいなら仕方のないことなのかもしれないですがね。
これだとちょっとしたコミュニティ内で動画を配ろうとすると、Youtubeで配るという方法が使えなくなったってことですね。ただ、動画はでかいのでクラウドでファイル共有をかけようとするのは厳しい気はしますね。まぁGoogleDriveは容量も大きいので、そこからURLを引いてもらえばいいんだろうけど、不特定多数に向けてっていうのはもう終わりになってしまいそうですね。
mp4の動画だけでも落とせれば、そこからAACのデータを抜くことはできるだろうから、新しいFirefoxのツールが出てこないかなぁ。それができなくなったらFirefoxのいいところが半分くらいなくなってしまう。
つい先日、どの音楽を落とそうとしてもツールが動かなくなっていた。それまでもYoutubeの改変で使えなくなっていたりはしたんだけど、そこまで問題が出ることはなくツールの方も追いついていた。
そしてそのうち、商業的にやっているビデオが落とせなくなっていた。まぁ普通は落とせないようにしちゃうよなと思うんですが、個人的に上げているものは今まで通り落とせていました。今回は全体に及ぶようで、動画も音楽だけも落とせなくなっていた。なんてこったい。
YouTube Video and Audio Downloader (Dev Edt.)というアドインも
Cannot detect url_encoded_fmt_stream_map or adaptive_fmts
と出ていて、システムの構造的に大改変があった模様。対応できればそれを待たねばなるまい。YoutubeだけならJavaScriptで相当面倒なことをやっていても、暗号化でもされない限りは対応できそうだけどね。
他のサイトでもWebブラウザの開発ツールで、mp4ファイルが落とせたり落とせなかったりしていたので、そこは技術的に取れなくしたりはできるのだろうなとは思っていた。しかし、今までYoutubeは大丈夫だと思っていたのだけれど、これではかなり厳しい。まぁ公共インフラ的な位置を占めたいなら仕方のないことなのかもしれないですがね。
これだとちょっとしたコミュニティ内で動画を配ろうとすると、Youtubeで配るという方法が使えなくなったってことですね。ただ、動画はでかいのでクラウドでファイル共有をかけようとするのは厳しい気はしますね。まぁGoogleDriveは容量も大きいので、そこからURLを引いてもらえばいいんだろうけど、不特定多数に向けてっていうのはもう終わりになってしまいそうですね。
mp4の動画だけでも落とせれば、そこからAACのデータを抜くことはできるだろうから、新しいFirefoxのツールが出てこないかなぁ。それができなくなったらFirefoxのいいところが半分くらいなくなってしまう。
Twitterまとめ投稿 2020/01/23 [Twitter]
carbonhydratそれは趣味とは言わない。お金をかけても趣味じゃない場合もあるくらいだし。 https://t.co/Cn9QK3J8SW01/22 19:44 carbonhydratRT @dokuninjin_blue: いや、実際に「胸が大きい女性が映っている」だけの広告にこれだけフェミニストの皆さんから批判の声が出されたのですから、「フェミニズムはそういうものではない」というのであれば、フェミニストの方々御自身がそのようにはっきり言明すべきなのでは。01/22 19:45 carbonhydratRT @badassceo: 失敗が怖い人こそ挑戦の数を増やせ。たった一回の挑戦に失敗すると思うから怖いんだよ。挑戦の数を増やせば失敗一回のダメージは減る。銃弾1発しかなかったら緊張してなかなか撃てないけどマシンガン持ってて1発でも当たればOKと思えば気兼ねなくぶっ放せるでしょ…01/22 19:45 carbonhydratRT @KGN_works: う~ん、またぞろ「自炊のほうが中食や外食より安いんだ、それをしないで高い高い言ってるのは知識が足りない自分の責任だろ」論者が出てきているのか。 それ、文化資産を持ってて初期投資も可能だった『余裕ある人』にのみ言えることです。01/22 20:04 carbonhydratOpera Softwareが最大876%の暴利ローンアプリで不正に荒稼ぎしてたことが判明、摘発されればOperaブラウザ終了の可能性も - GIGAZINE https://t.co/JeRNYd5cEJ 中国人は商売が上手いと… https://t.co/x2IakS4r8t01/22 21:49 carbonhydratテレビからのきっついクソリプw https://t.co/5CLlWzWfZP01/22 21:53
2020-01-23 05:01
コメント(0)
Twitterまとめ投稿 2020/01/22 [Twitter]
carbonhydrat『やっとmacOS Catalinaにした。』とうふめんたらー絶賛頻尿中|https://t.co/tyIVeNB64S01/21 06:44 carbonhydratRT @koshian: これちょっと賛否両論で話題になってたけど、偏差値60以上の世界の人たちに向けた言葉ならまったくそのとおりなんだよな。 下層に目を向けると違ってくる。親や教員や周囲の異性に自己肯定感をガリガリ削られてる。そういう人たちは「周りがダメ」ということを認める…01/21 08:49 carbonhydratRT @gerogeroR: あなたの絵みたことあるんですが私から見たら萌えイラストでしたよ。私と同じ考えの人がいてエロ拡散だからやめろといったらどうするんですか。個人のお気持ちで排除を要求してはいけないですね。というかこれがオーケーでキズナアイや宇崎ちゃんはだめってさすがに理…01/21 08:51 carbonhydratRT @tamako_han: 巨乳を性的に強調した表現はいけない!というふしだら侮蔑性規範慎み強化系フェミの皆さんは、「性犯罪にあったのはお前の体がエロいから」とか「そんな男を誘うような格好をしているから」と同じことを言っていることに気が付かないのである。01/21 08:51 carbonhydratRT @miraihack: “VTuberのホームページをGitHubのプルリクだけで更新していったらどうなるのか?企画に参戦してみた - Qiita” https://t.co/BmoHM39QLM01/21 15:36 carbonhydrat『Docker for MacでなんでUbuntuが動くのか?』とうふめんたらー絶賛頻尿中|https://t.co/SqzFLZDaxj01/21 18:46 carbonhydrat2000年1月19日、x86命令を変換しVLIW命令で処理する「Crusoe」が発表されました:今日は何の日? https://t.co/2enxWMXvxV @engadgetjp 懐かしい。クルーソーには期待していたが残念な結果に。Linusも絡んでいなかったっけ?01/21 18:53
2020-01-22 05:01
コメント(0)
Docker for MacでなんでUbuntuが動くのか? [MacOSX]
以前にDocker for Macを入れた際に、Ubuntuが動くのはなぜかと疑問に思っていました。chrootの発展形がコンテナ仮想化とするなら、Macのコンテナ上でLinuxが動くのは妙な話なんじゃないかと。
https://qiita.com/kirikunix/items/33414240b4cacee362da
ここではLinux同士を使っている場合に、ABIという仕組みがあるからある程度は大丈夫なんだよ、という説明でした。しかし、それではMacの説明がつかない。
下のコメント欄にその言及がありました。
これだったらコンテナ仮想化じゃなくて、ハイパーバイザー型と大して違わないやん。ただchroot的なディレクトリの利用はしているかもしれないけど。でも、Mac上のUbuntuは60GBの大きさしかなかった気がするなぁ。Dockerはコンテナ仮想化という認識は変えないといけないかもしれない。
ここを直接読む。
https://docs.docker.com/docker-for-mac/docker-toolbox/#the-docker-for-mac-environment
うわ。最初の最初にすごいこと書いてあったw。
VirtualBox入っとるやんw。というかDockerを上にかぶせる意味あるん?
あ~Docker Toolboxの方なのか。Docker Desktopの前にあったやつみたい。
やっぱハイパーバイザー使っとるわ。他のDockerはコンテナ仮想化かもしれないけど、for Macは純粋なコンテナ仮想化じゃないな。はじめはVirtualBoxを使う気になっていたけれど、DockerがHypervisorであれば使う意味があまりないんじゃないかと思ってきた。というか、macのコンテナを作ろうとしていたから、Linuxを入れるのを前提にしているんじゃどっち使ってもあんまり変わんないかもな。というか、慣れているVirtualBoxの方がいいのかも。
というかMacで開発しようと思ったら、コンテナを使えないとしたら既存の環境を汚すしかないのかとちょっと落胆。それが嫌だからコンテナを使おうと思っていたのに、Dockerのバカぁ。って、DockerでMacのコンテナ使えるかどうか調べてないですが…。
https://qiita.com/kirikunix/items/33414240b4cacee362da
ここではLinux同士を使っている場合に、ABIという仕組みがあるからある程度は大丈夫なんだよ、という説明でした。しかし、それではMacの説明がつかない。
下のコメント欄にその言及がありました。
https://docs.docker.com/docker-for-mac/docker-toolbox/#the-docker-for-mac-environment HyperKit という仮想化ツールでdockerホストとなるVMを作り、 そいつと /var/run/docker.sock を通してやり取りをする、という仕組みのようです。 macOSにABIを被せているわけではなく、Linuxを別個に立てているのですね
これだったらコンテナ仮想化じゃなくて、ハイパーバイザー型と大して違わないやん。ただchroot的なディレクトリの利用はしているかもしれないけど。でも、Mac上のUbuntuは60GBの大きさしかなかった気がするなぁ。Dockerはコンテナ仮想化という認識は変えないといけないかもしれない。
ここを直接読む。
https://docs.docker.com/docker-for-mac/docker-toolbox/#the-docker-for-mac-environment
うわ。最初の最初にすごいこと書いてあったw。
It also installs VirtualBox.
VirtualBox入っとるやんw。というかDockerを上にかぶせる意味あるん?
あ~Docker Toolboxの方なのか。Docker Desktopの前にあったやつみたい。
Docker Desktop uses HyperKit instead of Virtual Box. Hyperkit is a lightweight macOS virtualization solution built on top of Hypervisor.framework in macOS 10.10 Yosemite and higher.
やっぱハイパーバイザー使っとるわ。他のDockerはコンテナ仮想化かもしれないけど、for Macは純粋なコンテナ仮想化じゃないな。はじめはVirtualBoxを使う気になっていたけれど、DockerがHypervisorであれば使う意味があまりないんじゃないかと思ってきた。というか、macのコンテナを作ろうとしていたから、Linuxを入れるのを前提にしているんじゃどっち使ってもあんまり変わんないかもな。というか、慣れているVirtualBoxの方がいいのかも。
というかMacで開発しようと思ったら、コンテナを使えないとしたら既存の環境を汚すしかないのかとちょっと落胆。それが嫌だからコンテナを使おうと思っていたのに、Dockerのバカぁ。って、DockerでMacのコンテナ使えるかどうか調べてないですが…。
やっとmacOS Catalinaにした。 [MacOSX]
macOS 10.15.2になってからmacOSをアップデートしました。二回もマイナーアップデートしたんだから、あらかた問題は解決されているはず。というか、ずっと前の状態を保つ意味もあまりないので、TimeMachineでバックアップを取って入れてみました。
始めに15分で終わると出ていたんだけど、最終的に終わったのがちょうど一時間後くらいでした。ダウンロードにも時間がかかっているので、一時間強というところでしょうか。結構時間がかかる。最近のアップデートはSSDを使っているので、割と時間がかからなかった印象がありますが、やっぱりOSのアップグレードはそこそこ時間がかかる。まぁ使っているソフトウェアの環境ってのは人によって違いますしね。
LinuxだとかだとOSをクリーンインストールして入れ直しちゃうところですよね。コンテナとかの仮想化でもOSの構築を自動化でやっている場合も多いみたいだし。だけどクライアントOSはそういうわけにはいかないよね。色々データがシステムの中に散らばっちゃってるし。
それとは別に今、ちょっとDocker for Macを入れようかどうか気にしている。VirtualBoxでUbuntuを入れようかとも思ったんだけど、せっかくMacを使っているのだから、そのまま使った方がパフォーマンスも下がらないだろうなと。というか、わりとコンテナじゃない仮想化ってHDDの書き込みにパワーを使ったりしてますしね。それとHDDの容量を最初から規定しないといけないことも多いし。
そういう意味からしてコンテナ仮想化は他人丼的な使い方をしなければ、仮想化としてお手軽かと思うね。ハイパーバイザー型の仮想化も悪いとは思わないけど、完全に本番動作を仮定していない限りは別にmacOSでいいじゃないかと思う。曲がりなりにもUNIXなんだしね。
https://docs.docker.com/docker-for-mac/install/
Docker Desktopって書いてあるけど、Desktopって書いてあるのが気になる。特にGUIは必要ないんだけどなぁ。どうせコンテナの操作はCUIでやるんだし、そこいらの操作はVirtualBoxっぽくGUIでいいと思うんだけど、見た感じそうはなっていない。まぁ仮想環境のセッティングがホストOSに依存する部分が大きいので、そこまで設定に苦労しないからかもしれないけど、GUIはGUIでCUIはCUIで分けたい気もする。
ん?ubuntuとか書いてあるけど、macOSでubuntuのコンテナを動かすってどういうことだ?
ただ単にどのOSでもみんな同じこと書かれてんのかな? そもそもhello-worldってのは環境ってことなのかな?
とりあえず、docker run -it ubuntu bash やってみよ。
uname -a で見たら
macじゃなくLinuxが走っていることはわかる。Ununtuかどうかはわからんけど…。というか、コンテナ仮想化はこういうことできるの? なんかコンテナというプロダクトとしての趣向が違わない? コンテナ仮想化がchrootの発展系として考えるなら、違うOSのコンテナなんて使えないはずなんだけど…。
なんか色々気になるけど、Ubuntuが動くということはわかったわ。にしてもコンテナっていつもrootで始めに入るんだけど、普通のLiunxを使うものとしては気持ち悪すぎる。結局、普通のユーザー作るんやろし。まぁそのうち細かくやっていこうと思います。とりあえずはここまで。
Catalinaを入れてまず気づいたのが、Dockに何か無理矢理入れられている。PodcastとAppleTVが割り込んでいる。どっちも使わなそうだけど一応見てみよう。PodcastとかiTunesとかに入れられていて懐かしいけど、しばらく使っていなかったな。ただコンテンツが貧弱すぎて聞く気にならない。Youtube見てた方がいいなという話になっちゃいそうだな。
TVってアプリケーションは、映画とかの映像をレンタルか買い切りで見ることができるようだ。他の入ったら見放題のサービスよりも割高感はある。正直、これに飛びつく人はあまりいないだろう。とりあえず、TVもPodcastもDockから除いた。いらん、こんなもん。
iPadもあるのでSidecarができそうだけど、あんまり好評とは言えないみたいだしなぁ。後でやるけど、今はまだいいや。Catalina唯一の新機能と言われていたが、本当に他に何かないのかなぁ。
始めに15分で終わると出ていたんだけど、最終的に終わったのがちょうど一時間後くらいでした。ダウンロードにも時間がかかっているので、一時間強というところでしょうか。結構時間がかかる。最近のアップデートはSSDを使っているので、割と時間がかからなかった印象がありますが、やっぱりOSのアップグレードはそこそこ時間がかかる。まぁ使っているソフトウェアの環境ってのは人によって違いますしね。
LinuxだとかだとOSをクリーンインストールして入れ直しちゃうところですよね。コンテナとかの仮想化でもOSの構築を自動化でやっている場合も多いみたいだし。だけどクライアントOSはそういうわけにはいかないよね。色々データがシステムの中に散らばっちゃってるし。
それとは別に今、ちょっとDocker for Macを入れようかどうか気にしている。VirtualBoxでUbuntuを入れようかとも思ったんだけど、せっかくMacを使っているのだから、そのまま使った方がパフォーマンスも下がらないだろうなと。というか、わりとコンテナじゃない仮想化ってHDDの書き込みにパワーを使ったりしてますしね。それとHDDの容量を最初から規定しないといけないことも多いし。
そういう意味からしてコンテナ仮想化は他人丼的な使い方をしなければ、仮想化としてお手軽かと思うね。ハイパーバイザー型の仮想化も悪いとは思わないけど、完全に本番動作を仮定していない限りは別にmacOSでいいじゃないかと思う。曲がりなりにもUNIXなんだしね。
https://docs.docker.com/docker-for-mac/install/
Docker Desktopって書いてあるけど、Desktopって書いてあるのが気になる。特にGUIは必要ないんだけどなぁ。どうせコンテナの操作はCUIでやるんだし、そこいらの操作はVirtualBoxっぽくGUIでいいと思うんだけど、見た感じそうはなっていない。まぁ仮想環境のセッティングがホストOSに依存する部分が大きいので、そこまで設定に苦労しないからかもしれないけど、GUIはGUIでCUIはCUIで分けたい気もする。
$ docker run hello-world Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 1b930d010525: Pull complete Digest: sha256:9572f7cdcee8591948c2963463447a53466950b3fc15a247fcad1917ca215a2f Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://hub.docker.com/ For more examples and ideas, visit: https://docs.docker.com/get-started/
ん?ubuntuとか書いてあるけど、macOSでubuntuのコンテナを動かすってどういうことだ?
ただ単にどのOSでもみんな同じこと書かれてんのかな? そもそもhello-worldってのは環境ってことなのかな?
とりあえず、docker run -it ubuntu bash やってみよ。
uname -a で見たら
# uname -a
Linux b24ee05811f8 4.9.184-linuxkit #1 SMP Tue Jul 2 22:58:16 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
macじゃなくLinuxが走っていることはわかる。Ununtuかどうかはわからんけど…。というか、コンテナ仮想化はこういうことできるの? なんかコンテナというプロダクトとしての趣向が違わない? コンテナ仮想化がchrootの発展系として考えるなら、違うOSのコンテナなんて使えないはずなんだけど…。
なんか色々気になるけど、Ubuntuが動くということはわかったわ。にしてもコンテナっていつもrootで始めに入るんだけど、普通のLiunxを使うものとしては気持ち悪すぎる。結局、普通のユーザー作るんやろし。まぁそのうち細かくやっていこうと思います。とりあえずはここまで。
Catalinaを入れてまず気づいたのが、Dockに何か無理矢理入れられている。PodcastとAppleTVが割り込んでいる。どっちも使わなそうだけど一応見てみよう。PodcastとかiTunesとかに入れられていて懐かしいけど、しばらく使っていなかったな。ただコンテンツが貧弱すぎて聞く気にならない。Youtube見てた方がいいなという話になっちゃいそうだな。
TVってアプリケーションは、映画とかの映像をレンタルか買い切りで見ることができるようだ。他の入ったら見放題のサービスよりも割高感はある。正直、これに飛びつく人はあまりいないだろう。とりあえず、TVもPodcastもDockから除いた。いらん、こんなもん。
iPadもあるのでSidecarができそうだけど、あんまり好評とは言えないみたいだしなぁ。後でやるけど、今はまだいいや。Catalina唯一の新機能と言われていたが、本当に他に何かないのかなぁ。
Twitterまとめ投稿 2020/01/21 [Twitter]
carbonhydratRT @M16A_hayabusa: いいか「英霊」というロジックは、イジメで自殺した同級生に対して、イジメた生徒やイジメを放置していた学校側が… 「彼はかけがえのない大切な 仲間でした。本当に残念です」 …と何食わぬ顔で言っている 鬼畜野郎と同じだと思え。 国の失策で…01/20 13:36 carbonhydratRT @miyahancom: 業務改善として入れたOSSは脆弱性が1件でも見つかると、やれ使い続けて大丈夫なのかとか禁止するべきとか言い出すのに、WindowsやIEに脆弱性が数百件見つかろうがゼロデイ攻撃されてようが一切その話題出さないのはなんでなんだぜ?01/20 19:13 carbonhydratRT @jjktkrggrks: 個人的に1つでも該当するなら格安SIMの契約は全力で阻止したい。 https://t.co/zUPkDHHC2n01/20 19:14 carbonhydratRT @yukkuri0762: ←自分が想像する20年前の据え置きゲーム機 →実際の20年前の据え置きゲーム機 https://t.co/lfVzwRZd2901/20 19:14 carbonhydratRT @nonco331: タバスコって美味しいですよね。 https://t.co/eBF39a0VCr01/20 19:19 carbonhydratRT @9NZ7hagej: 最近の人類は自然に反してるとか言い始めたら大体これ https://t.co/T864eOPqRG01/20 19:20 carbonhydratRT @dameningen1gou: バブルの頃に「日本は経済的に豊かになったが大切なものを失った」としたり顔で言ってた人が結構いたと思うんだけど、今は「日本は貧しくなった中国に追い抜かれた後進国だもうダメだ」と騒ぐ人ばかりで「これでバブル期に失ったものを取り戻せる精神的に豊…01/20 21:02 carbonhydratRT @OGmk23797: 被虐待児童を児童相談所に通報する場合、冒頭で、 『通告です』 と明言すること。 これが死活的に重要だそうだ。 通報者から『通告』の一言があると、その通話内容は録音され、児童相談所もすぐ動ける。 『相談』や『連絡』等と言われてしまうと児童相談…01/20 21:02 carbonhydratRT @Rubisco_TCA: 医大で女性は一律80点マイナスがあまりにも心にグサグサ刺さりすぎてしんどい。というのも、私の周りに女性で多浪して医学部医学科を目指して、結局医学科に行けなかったって人が沢山いるから。あの人たちは正当に試験されてダメだったのじゃなく差別で行けなか…01/20 21:03 carbonhydratRT @suzuki_kenya: タピオカミルクティー、実際によく飲んでいる方々から「あれはオシャレアイテムなどではない、小腹が空いた時や疲労時に瞬時に糖と炭水化物を摂取でき、加えて片手で飲めるので犬の散歩や移動中などにも便利、しかもおいしい、ヴイダーインとかの更なる進化系」…01/20 21:03 carbonhydratRT @myonyomu: こういうGolangが雑に和訳されてるの大好き https://t.co/Q18uUJMYGs01/20 21:07 carbonhydratRT @dong_po_rou: 最後のセンター試験、日本史Bの会話文が最高でした。大学改革に対する出題者の叫びのように思えてならない。 https://t.co/BviJCL5rvv01/20 21:08 carbonhydratRT @mt3678mt: とにかく安倍首相を守り切ればその先には官僚としての栄達が待っている。そう思えば、恥知らずと罵られようとも気にしないのだろう。これでは国家は劣化するばかりだ。その先鞭をつけた佐川宣寿元国税庁長官の罪は非常に重い。01/20 21:09 carbonhydratRT @tadashi_ohta: スマホ画面割れ防止コーティングの実演販売をしてたお姉さん、僕が胸ポケットにスマホを入れているを見て「電磁波が体に悪影響を及ぼします! コーティングをすれば悪い電磁波も出なくなります!」と勧めてきたけど断った。コーティングで電磁波が出なくなった…01/20 21:10 carbonhydratRT @Simon_Sin: 『医学部入試「差別あった」 聖マリアンナ医大の第三者委』 コレに「女性や浪人生は勤務期間が短いので合理的」とか抜かしてたヤツがいたけどじゃあそれを募集要項に書けってことですよ。合理的ならそう書け。書けねえならやるな。 https://t.co/N…01/20 21:13 carbonhydrat『Laravelは何でできているのか?調べようとした。』とうふめんたらー絶賛頻尿中|https://t.co/pEgyzG14AE01/20 21:22
2020-01-21 05:01
コメント(0)
Laravelは何でできているのか?調べようとした。 [プログラミング]
PHPのフレームワークとして超有名なLaravelですが、Laravel自体はPHPで出来てんのかとちょっと不審に思っていました。そもそもコマンドラインで打つようなツールをPHPで作れるのかとか、ファイルの生成とか正直、言語的に得意としているところなのかなと思ったりしていました。
Ruby on RailsやDjangoで自分の言語自信を生成するくらいは普通のプログラミング言語なので、RubyでRubyスクリプトを作るとか、PythonでPythonスクリプトを作るとかは普通に想像できるのですが、PHPは基本的にHTMLを動的に生成するスクリプトでしたので、PHPがPHPスクリプトを作るのってのがすんなり想像できなかったのもあります。
Laravelが何でできているのかというところだけども、そもそもそれを入れるComposerが何でできているのかを調べたほうが早い気がして、そちらを調べてみました。Laravelは本当に触りしか使っていないので、というか、Laravelを入れる段になって、Composerを入れるところでムムムとなったので、そこで調べてみたのでした。
Composerの実体はcomposer.pharというファイルなのだけれども、それ自体はPHPファイルとかリソースファイルを含んだアーカイブファイルらしい。圧縮もしていないみたいなのでtarみたいなもの?
https://qiita.com/rana_kualu/items/d868604a1f54c2f93a7c
https://laboradian.com/php-composer/
実際、composer.pherのファイルの先頭部分を見てみると#!があって、PHPのスクリプトとはいえ結局phpで実行されているだけでした。まぁLinuxだからそうだよなぁ…。
実行ファイルだから、ほかの言語とかで書かれているのかなと思っていましたが、そこはそれでPHPがPHPを作り出すという基本は守っているみたいです。というかPHPがshebangで実行されているというのはあまり気持ちの良いものではないなと思ってしまうのは私だけでしょうか。
とにかく同様にしてLaravelも動作しているかもしれません。というか、元のパッケージマネージャがPHPなんだから、LaravelもPHPでできているんじゃないでしょうかね。Laravelが生成するスクリプトはPHPですが、ここまで来てわざわざほかの言語でやる必要もないでしょうし。まだ調べてないけどlaravelコマンドもshebang付きのpharファイルなんじゃないかなと思っています。
調べてないのはlaravelが一つのコマンドだけじゃないからです。あと仕事場に環境はあるけど、手元に環境がないからですね。そのうち作るけど、作るの面倒くさい。laravelコマンドは名前からそうですけど、artisanとか、生成するcreate-projectに関しては作れるのはlaravelだけじゃないみたいですし。というか、正直、一つのコマンドにまとめて欲しい気はします。
Ruby on RailsやDjangoで自分の言語自信を生成するくらいは普通のプログラミング言語なので、RubyでRubyスクリプトを作るとか、PythonでPythonスクリプトを作るとかは普通に想像できるのですが、PHPは基本的にHTMLを動的に生成するスクリプトでしたので、PHPがPHPスクリプトを作るのってのがすんなり想像できなかったのもあります。
Laravelが何でできているのかというところだけども、そもそもそれを入れるComposerが何でできているのかを調べたほうが早い気がして、そちらを調べてみました。Laravelは本当に触りしか使っていないので、というか、Laravelを入れる段になって、Composerを入れるところでムムムとなったので、そこで調べてみたのでした。
Composerの実体はcomposer.pharというファイルなのだけれども、それ自体はPHPファイルとかリソースファイルを含んだアーカイブファイルらしい。圧縮もしていないみたいなのでtarみたいなもの?
https://qiita.com/rana_kualu/items/d868604a1f54c2f93a7c
https://laboradian.com/php-composer/
実際、composer.pherのファイルの先頭部分を見てみると#!があって、PHPのスクリプトとはいえ結局phpで実行されているだけでした。まぁLinuxだからそうだよなぁ…。
$ head /usr/local/bin/composer #!/usr/bin/env php <?php /* * This file is part of Composer. * * (c) Nils Adermann* Jordi Boggiano * * For the full copyright and license information, please view * the license that is located at the bottom of this file.
実行ファイルだから、ほかの言語とかで書かれているのかなと思っていましたが、そこはそれでPHPがPHPを作り出すという基本は守っているみたいです。というかPHPがshebangで実行されているというのはあまり気持ちの良いものではないなと思ってしまうのは私だけでしょうか。
とにかく同様にしてLaravelも動作しているかもしれません。というか、元のパッケージマネージャがPHPなんだから、LaravelもPHPでできているんじゃないでしょうかね。Laravelが生成するスクリプトはPHPですが、ここまで来てわざわざほかの言語でやる必要もないでしょうし。まだ調べてないけどlaravelコマンドもshebang付きのpharファイルなんじゃないかなと思っています。
調べてないのはlaravelが一つのコマンドだけじゃないからです。あと仕事場に環境はあるけど、手元に環境がないからですね。そのうち作るけど、作るの面倒くさい。laravelコマンドは名前からそうですけど、artisanとか、生成するcreate-projectに関しては作れるのはlaravelだけじゃないみたいですし。というか、正直、一つのコマンドにまとめて欲しい気はします。
タグ:PHP
Twitterまとめ投稿 2020/01/20 [Twitter]
carbonhydrat『バトルマスター導入に向けてのメタルフェス。』とうふめんたらー絶賛頻尿中|https://t.co/I5SFF0VIy401/19 10:32 carbonhydratRT @Naani123A: センター倫理 ゼロワン見てんじゃねえよwwwwwww #センター試験 #ゼロワン https://t.co/w9YqZYjsFG01/19 12:26 carbonhydratRT @kusyokuin: 京大のセンター試験会場に奴がいた https://t.co/kSufYEoUfb01/19 12:27 carbonhydratRT @miraihack: 今の30代以上は2000年以降に起きた出来事は全てつい最近の出来事として認識してしまうバグがある01/19 15:44 carbonhydratRT @HikaruIjuin: 不登校の原因がスマホやゲームってホントかね。ゲームがなかった時代に学校行かなかった僕は、やたら教育テレビ見てたよ。午前中他にやることなかったから。深夜は本読んでた。本と教育テレビが不登校の原因ではなかったなあ。先に学校行きたくないところからだと…01/19 15:45 carbonhydrat上白石萌音と上白石萌歌を混同していた。顔違うけどなんでだろと思ったら姉妹か。顔がちょっとクセがあってどっちも好き。オースティンパワーズ的に3人でしたいw01/19 15:55 carbonhydratキレて怒鳴られ、凄まれ…“勘違い”客にミシュラン星付き飲食店が困惑 (1/2) 〈AERA〉|AERA dot. (アエラドット) https://t.co/KAel8v64Nm そこまでして行きたいかねぇ。予約代行業って仕事がで… https://t.co/WgPqUQLtTp01/19 16:02 carbonhydratキレて怒鳴られ、凄まれ…“勘違い”客にミシュラン星付き飲食店が困惑 (1/2) 〈AERA〉|AERA dot. (アエラドット) https://t.co/KAel8v64Nm そこまでして行きたいかなぁ。予約代行業って仕事がで… https://t.co/4ErFV1gKip01/19 16:06 carbonhydrat可愛すぎか♡ガンダムとハローキティ、そしてハロまで合体したガンプラが発売!|Japaaan https://t.co/y5i8ufI3dc #japaaan サンライズもサンリオも何を考えているのかわからないw01/19 16:17 carbonhydrat【ドラクエウォーク】最速Lvカンストを達成した猛者による最強レベリング講座 カンストはLv.50かと思っていた。50もキツいのにな。 https://t.co/Zawru4nyQW01/19 16:34 carbonhydrat『鬼滅の刃』と『テコンダー朴』技が酷似と指摘 驚きの共通点を多数発見 https://t.co/c2ud8JhpzH @sirabee_news 変な韓国人がまた難癖つけてると思ったが、話が似ているという作品は腐る程あるわけで。ガンダムとスターウォーズほどもない気はするんだが。01/19 16:41 carbonhydrat漫画「100日後に死ぬワニ」 誰にも変えることが出来ない結末が、ここにある “死まであと99日” https://t.co/1GbpqF5ff1 @itm_nlab 毎回オチが切ない。というかオチがなくても気分が堕ちる。01/19 16:53 carbonhydratRT @Danke_schon0721: 巨乳当事者として言いたいことは「巨乳を性のアイコンにして客寄せパンダにするの辞めろ」だけなのに、それが何故か「巨乳は絶対悪」「巨乳憎し」「巨乳は不謹慎」と歪められるの不思議すぎる。 大きいが故の扱いが嫌だから声を上げてるだけで、胸の大き…01/19 16:54 carbonhydratこのおばちゃんクソやなぁ。毎回やるべき順番を間違えている政治家を見てゲンナリする。飴と鞭ならまだ分かるが、いきなりムチを振るおうとする政治家が多すぎる。何か抜本的にやってからにしろよクズが。 https://t.co/TWsmDmEKic01/19 16:58 carbonhydratRT @noumintyu: 自殺者統計開始以降最小の報道のウソ。遺書や目撃証言といった具体的な証拠がない限り,自殺ではなく変死体として処理するようになっただけ。参考)データえっせい 下記グラフ2006年(左)と2015年(右)の比較でわかるように、自殺者数の減少分とほぼ同数変…01/19 18:03 carbonhydratRT @mariebell321: こんな状況で「預貯金口座と連結」なんて言ってるわけですか〓 冗談言うんじゃありませんよ〓〓〓 マイナンバー端末、自治体4割が情報持ち出し可能 会計検査院指摘 - 毎日新聞 https://t.co/JBzM0gWuiD01/19 18:04 carbonhydratRT @kikumaco: 麻生太郎は国民を殺そうとしているんですよ。彼は貧困層に対して極端なまでに冷淡です。 野党は安倍よりも麻生を辞めさせることに注力したほうがいいと思うよ01/19 18:08 carbonhydratRT @segawashin: こんなことに教育リソースを割いてなにになるのかという疑問を差し置いても、こんなので評価される生徒というのは大人の顔色うかがってイイ感じで答えるのが上手な、かつての俺みたいな嫌みなガキなんじゃないかと思うね。多分そういう子は着々と出世して他人に道徳…01/19 18:12 carbonhydratRT @jaguring1: めっちゃおもしろい 中学生「 人の脳をロボットにうつすことは可能ですか?」 金井先生「可能です」 石黒先生「可能です」 渡辺先生「実現させます。私が20年で」 情報処理学会(2020年2月号) https://t.co/kU7Abt6EOx h…01/19 18:15 carbonhydratRT @NarumiHayase: 会社を辞めてから転職する際に、 「再就職手当」と「就業促進定着手当」を申請して 約50万円貰った人もいるそうです。 知らないで0円と、知っていて50万円だと全然違いますね… 日本の社会保障ってこういうの多いので、 ちゃんと情報まとめたいで…01/19 18:17 carbonhydratRT @kimjonteran: インドカレー屋の置き手紙。OKだろ。 https://t.co/OS80wUmt5G01/19 18:18 carbonhydratRT @NOSUKE0607: 全国的にはあまり知られていない、関西圏プロレスリング的なホームドア。これだと車両毎に違うドア位置に対応できるわけ。 https://t.co/iELE93YLOg01/19 19:01 carbonhydratRT @miraihack: “Windows CryptoAPIの脆弱性によるECC証明書の偽造(CVE-2020-0601) - ぼちぼち日記” https://t.co/VGy0M7FasE01/19 19:13 carbonhydratLinuxリソースの監視・確認に関するコマンド逆引きメモ https://t.co/uxZpKTxlDh #Qiita 覚えておくのはしんどいなぁ01/19 20:31 carbonhydrat郵便配達もEVバイクに、日本郵便がホンダから2000台導入へ https://t.co/I8yXD0nmXX @engadgetjp 時代の流れなんやろうけども、どっちかっつーと新聞配達に使ってほしい。起きはしないんだけど、早朝にあの音はないんじゃないかと思うし01/19 20:34
2020-01-20 05:01
コメント(0)