タグ

ブックマーク / dqn.sakusakutto.jp (12)

  • Dockerの公式MySQLイメージの使い方を徹底的に解説するよ · DQNEO日記

    DockerHubでは公式のMySQLイメージが無料で公開されています。 これを使えば簡単にDockerMySQLサーバを起動することができます。データの永続化もできます。 https://hub.docker.com/_/mysql/ 2015年10月現在では下記3種類のバージョンが用意されています。 タグを指定することで任意のバージョンのイメージを取得できます。 5.5 5.6 5.7 (latest) イメージの取得方法 docker pull mysql これで最新の安定版を取得できます。 バージョンを明示的に取得したい場合はタグを使います。 docker pull mysql:5.7 (2015/10/25現在だと、mysql, mysql:latest, mysql:5.7, mysql:5.7.9はどれも同じイメージを指します。) これのDockerfileを見たい場合はこ

  • [Chef]猿でもわかるExecute,Script,Bashリソースの違い · DQNEO日記

    結論 シェルスクリプトをbashで書くのであれば、下記はどれも変わらない。 "execute" リソースで "command" "script" リソースで "command" "script" リソースで "code" "bash" リソースで "command" "bash "リソースで "code" 迷ったら"bash"リソースで"code"属性を使えばよい。 解説 ソースコードを見てみるとわりと一目瞭然 公式マニュアルを見ても全然わからないのですが、ソースコードを見れば意外と簡単に仕組みがわかります。 https://github.com/opscode/chef/blob/master/lib/chef/resource/bash.rb ちなみに私はrbenv経由でgem install chefしたので、下記のような場所にソースコードがありました。 ~/.rbenv/versi

  • JavaScriptで、メソッドをコールバックとして渡す方法(コールバック関数でthisをbindさせる方法) · DQNEO日記

    Home Subscribe var obj = { name : 'pikachu', say : function(){ alert('I am ' + this.name); } } setTimeout(obj.say, 1000); // => 'I am'とだけ表示される。 これは期待通りに動いてくれません。 コールバックとしてメソッドを渡した場合、それはオブジェクトと切り離された単なる関数(メソッドではない)となってしまうのです。 つまり下記と等価なのです。 setTimeout( function(){alert('I am ' + this.name);} , 1000); 関数がオブジェクトと切り離されているため、このthisはグローバルオブジェクト(windowオブジェクト)を指してしまっており、'I am'とだけ表示されます。 ではどうすればよいでしょうか? bin

  • JavaScriptの「ケツカンマ問題」まとめ · DQNEO日記

    なぜIE6,7(とIE8の配列)ではケツカンマが正しく動かないのか 結論からいうと、「それがJScriptの仕様である」ということになるかと思います。 後述のとおりECMAScript3の仕様書はケツカンマなしなので、IE(=Jscript)がそのような仕様になっていても間違いではないということになります。 ひとつだけ納得がいかないのは、IE(=Jscript)は配列ケツカンマとオブジェクトケツカンマで挙動が異なるのです。 var list = ['a' , 'b', ]; // → 要素3個のarrayが生成される。 var obj = { a : 1, b : 2, }; // → 文法エラー この仕様はなんか中途半端な気がします。 ECMAScriptの仕様はどうなっているのか ECMAScript3 Standard ECMA-262 3rd Edition-December199

  • JavaScriptで、もう連想配列の最後のカンマに悩まない!(※追記あり) · DQNEO日記

    末尾に要素を増やしたい、または減らしたいときに問題が起こります 例えば" c : 3 "の行を単純に削除するとバグるので削除したいときに、" b: 2,"のカンマを削除する必要があります。 また、" d : 4 "を追加したいときに、" c : 3 "の後にカンマを入れる必要があります。 これは面倒くさいですね。 (エンバグについてはjslintなどのツールで防げばよいという指摘があったので修正しました。) より良いやりかた var x = { a : 1, b : 2, c : 3, dummy : null } このように最後に "dummy : null" というダミーの要素を書いておきます。 こうすれば、プロパティa, b, cはどれもカンマ付きで平等になります。 ぜひ一度試してみてください。 (もしかして常識だったらすみません。あとこの手法は for in で走査したいときはよく

  • Chef-Soloはオワコンになりlocal modeが今後の主流になるとのこと · DQNEO日記

    ブログ書きました → Chef-Soloを100倍楽しく使うためのrsoloというツールを作りました。 http://t.co/GI1DrlMx8O #chef #knifesolo — DQNEO.php (@DQNEO) September 27, 2014 @DQNEO ご存知かもしれませんが参考までにどうぞ(最近の流れだとchef-solo -> chef local mode): http://t.co/wNvSJz3iOR — Shuhei Tanuma (@chobi_e) September 27, 2014 全俺が泣いた。 SoloからZeroへ。Chef Client Local Modeに移行しましょう 詳しくはChef公式ブログの記事に書かれています。 From Solo to Zero: Migrating to Chef Client Local Mode Ch

    Chef-Soloはオワコンになりlocal modeが今後の主流になるとのこと · DQNEO日記
  • jQueryのeachの仕組みを徹底的にわかりやすく解説してみた。 · DQNEO日記

    eachのキホン:要素を1個ずつ処理する まずおさらい。 このようなHTMLがあるとします。 <ul> <li>foo</li> <li>bar</li> </ul> eachを使うと、要素1個ずつに対して順繰りに処理を行うことができます。 <script> $(function(){ $('li').each(function(){ alert( $(this).text() ); // 'foo', 'bar'と表示 }); }); </script> これがキホンです。 変形してみる 上のeach式は、下のように変形できます。 (一番外側のブロック$(function(){....})は省略します) $.each( $('li'), function(){ alert($(this).text()); }); さらに変形してみます。 グローバル変数 "$" はグローバル変数 "jQu

    jQueryのeachの仕組みを徹底的にわかりやすく解説してみた。 · DQNEO日記
  • cron力をつけよう!全てのcrontab入門者に贈る9個のテクニック · DQNEO日記

    なお、時間設定方法や書式についてはここでは解説しません。 拙作「くろんメーカ」をお使いください。 くろんメーカ - crontab用のコマンドを自動で生成します。 そのままコピペしてお使いください。 crontab -e で直接編集しない 有名な話ですが、crontab -r とやってしまうと全てが一瞬で消え去ります。 まさにバルス! 間違えて crontab -r してしまい、crontab をふっとばしてしまった。つか、隣同士にある -e と -r で編集と削除とか、酷いよ><。。。 crontab -r を安全にする - antipop 必ずローカルファイルに設定を書いたうえで、それを反映させるようにしましょう。 $ crontab -l > ~/crontab # 現在の設定をバックアップ $ vi ~/crontab # ローカルファイルを編集 $ crontab < ~/cro

    cron力をつけよう!全てのcrontab入門者に贈る9個のテクニック · DQNEO日記
  • [TortoiseSVN]初心者がSubversionを理解するために絶対必要なこと - DQN起業日記

    1ヶ月前までSubversionのことを「スーパービジョン」と読み間違えていた私ですが、ようやく更新・コミット以外の便利機能を使えるようになってきました。 SVN、Subversionを理解するためのカギ SVNというシステムは、次の3者で成り立っている。 ユーザ SVNクライアント(=TortoiseSVN) レポジトリを保持しているSVNサーバ この概念を理解したとたん、すっと霧が晴れたような感じがしました。 それからは、新しい機能を覚えたり、マニュアルを読んで理解したりできるようになりました。 SVN初心者が覚える恐怖 SVNシステムを使いはじめた当初、私の脳裏には次の2者しかいませんでした。 ローカルPCのファイル・フォルダ群 サーバのレポジトリ そして、 コミット = アップロード 更新 = ダウンロード という認識でした。 ソースコードをFTPでアップするのと同じようなイメージ

  • ソースコード20万行の大規模サイトのPHPを5.1から5.4に上げるためにやったことまとめ · DQNEO日記

    所要期間 着手しはじめたのが2010年12月ごろ、完了したのが2013年9月だったので何と3年近くかかったことになります。 長引いた原因は、日々の機能追加や運用をしながら孤独に片手間で細々とやってたからです。(単純に人手不足とも言う) また、PHPバージョンアップと同時にCentOSサーバを5から6にあげることにしたのでサーバ再構築のための工数も含まれています。 後半は仕事仲間が増えてその人が専業でバージョンアップ作業をやってくれたのでだいぶ楽できました。 それと専任のテスターさんたちにも参加していただいたので番で大きなトラブルなく完了することができました。 感謝感謝です。 サーバ入れ替え作業が終わってPHP5.1の入った古いサーバを削除したときの、まさに「技術的負債」を返済し終わった瞬間の、あのスッキリ感、もう言葉にはできません。 終わってみてこの件に関するRedmineのチケットを数

    ソースコード20万行の大規模サイトのPHPを5.1から5.4に上げるためにやったことまとめ · DQNEO日記
  • Git pullを使うべきでない3つの理由 · DQNEO日記

    git pullは使わなくてもよい 初心者はgit pullを使わない方がよい 我々ソフトウェアエンジニアは勉強が大好きなので、コマンドがあるとそれを勉強して使いこなさなければいけないと考えがちですが、ときには「覚えない、使わない」という発想も大事なのではないでしょうか。 以下にその理由をのべます。 git pullは使う必要がない git pullを使わないとできないこと、というのはありません。 使わなくても全然困りません。 git fetchとgit mergeとgit rebaseだけですべての用は足せます。 私はチーム開発でGit格的に使い始めて数か月経ちますが、普段の作業でgit pullを使ったことはないしそれで困ったこともありません。 git pullを使わなければ、余計な落とし穴に落ちない git pullには落とし穴があります。 初心者はたいていその穴に落ちます。 「

    Git pullを使うべきでない3つの理由 · DQNEO日記
  • 必殺!Github導入に向けて上司を説得する時に使える資料まとめ · DQNEO日記

    Subversion vs Github 青い線と赤い線。 あなたの会社は、どちらと運命をともにしたいでしょうか? 業界誌でも大きく特集されている 「Githubは世界標準の開発環境である(キリッ」by @HIROCASTER さん Githubを導入している先進企業たち 公開されている情報をもとにリストアップしてみました。 ご要望があれば追加します! (Piece of Cakeさんを追加しました。) (サイボウズさんを追加しました。) これらの事例の中から資料をキリハリして、上司の説得に使いましょう。 \(サイボウズ)/ \(ペイパーボーイ)/ 技術的なアプローチを強化しようと、エンジニアのトップであるmizzyに 直属になってもらい、全社的に取り組むべき課題とチャレンジしたいことの洗い出しや 技術アウトプットを高めるための取り組みを始めました。 [中略] そのような取組の結果、エン

    必殺!Github導入に向けて上司を説得する時に使える資料まとめ · DQNEO日記
  • 1