ラベル 雑記 の投稿を表示しています。 すべての投稿を表示
ラベル 雑記 の投稿を表示しています。 すべての投稿を表示

2025年12月31日水曜日

2025年も残りわずか!

みなさん。こんばんは。
2025年も残り4時間を切りました。私は今から 2026 年までにふりかえり記事を書き切ることを今年最後の目標としました。この投稿とは別で書きます。

さて、目標記事の方は個人の GitHub の活動をふりかえる記事にしたいと思いますので、こちらでは簡単にその他どんなことがあったのかふりかえります。
(さっさと目標の方を書くべきですが、他のことも今年のうちに書いておきたいので…)

CEDEC2025運営委員をやりました!

まず始めに 2025 年はなんといっても CEDEC ですね。
念願だった運営委員をやりました!CEDEC2025 のサイトにもちゃんと載ってますね。感無量。ちなみに、ふりかえりは社内向けに結構ちゃんと書いて、社内勉強会でも発表したんですが、ここでは簡単に(公開予定ありません)

やはり、運営委員側になって見えたもの、感じたものがあり、とてもたくさんのインプットを得られ、さらに自分自身の成長や変化に繋がったかなと思います。
自分が CEDEC に始めて参加したのは、たぶん 2011 か 2012 かな。
初登壇したのが 2015。最近も登壇しまして、トータルで5セッションになりました。いろんな意味で CEDEC は私を成長させてくれたなと思います。転職してからしばらく視線が社内に向いていたのですが、最近また外に向き始めていたので非常に良いタイミングだったと思います。

CEDEC2026 のサイトもオープンしてますね。公募も年明けから開始されるようなので、是非みなさんも応募していただければと思います。
自分も登壇者として、また新しいチャレンジができたらなーと思っています。

ブログの再開

次はこのブログの再開ですね。再開したと言っても以前のような週1更新ではなく、不定期ではありますが…
まぁ、ほぼ2年お休みしていた状態からなので良しとしましょう。
CEDEC 運営委員になったから再開したわけではなく、若手のやる気に感化されたんですよね。
あとは AI によってやる気になったおじさんの一人って感じですね。
まだまだオレも若いぞということです。

GitHub

最後に GitHub の活動を。これも AI パワーによって commit が増えた気がします。


(もっと増えたかな?と思ってたけどそれほどでもなかった…去年の自分エライ)
感覚としは、あまり詳しくないものでも取っ掛かりになるものをすぐに得られるようになったことで、こういうのあると便利かも!からとりあえずやってみるが増えた気がします。
今までもできなくもなかったとは思うんですが、詳しくないと調べ方もわからなかったり、言語やツールのセオリーとかもわからなかったりで、最初の一歩が重かった。
それが大分軽くなりましたね。

あと、今まで出勤時にはスマホでゲームだったのですが、今はスマホでコーディングエージェントに指示して OSS 開発をしています。(あ、基本リモートなので出社はほとんどしてないんですけどね)時間(スピードやタイミング)的にも OSS 開発がしやすいなったと感じますね。
どんな活動があったかは、このあと別の記事でふりかえろうと思います。

最後に

2026年は今年よりも記事書けたらなーと思ってます。
それでは、良いお年を。

2025年6月23日月曜日

おひさ!

どうも久しぶりです。いつぶりの投稿でしょうか。約2年ぶりみたいですね。。
ここ数年は仕事が楽しくて社内での活動ばかりでした。
…というのも言い訳でして、一度途絶えた習慣を元に戻すのは大変だなと感じてます。
リモートワークになり通勤がなくなったのが一番の影響でしょうか。
出勤途中のスタバで記事を書くというのが習慣だったんですよね。
私物 PC を毎日リュックに入れて通勤してました。たまに会社の PC も持ち帰ることがあったので2台背負って電車に揺られる日もありました。信じられません。

最近は公式ドキュメント読めば OK だったり、 Zenn や Qiita などの記事を見ることや、
AI に聞くことが増え、個人ブログで情報を得る機会がかなり減ってしまいました。
(消しゴムの跡)
このへんはいろいろと思うところもあるんですよね。自分がこのブログを書く意味ってなんだろう、とか。
(テキトーなこと言ってます)

あと、これまでインターネット上の自分は本名の自分と別として活動してました。
まぁ隠してたわけではないですし、それなりの人に = あの人と認知されていることは知ってはいましたが、ここ数年でこの = 認知の範囲が広がったんじゃないかなと思ってます。
今までのように仕事成分抜いて投稿するってのもやりづらいなぁと勝手に感じております。

と、ネガティブな理由を書きましたが、それを書くために再び筆を執ったわけではないです。
最近、若手の活躍や意欲の高さにあてられて、自分も何かやりたくなったからですね
この2年間なにもしてなかったわけではなく、OSS活動はずっとやってきてましたし、公にやったことの話なら問題ないので、また書くことにしました。

書くペースはどうでしょうね?以前のように週一回更新はできないかもしれないですが、2年分の貯金でしばらく頑張ってみましょうかね。こういう形での不定期連載もありだろうか?
まぁまだしばらくこのブログで個人活動を続けようかと思います。今後ともよろしくお願いします。

2021年10月14日木曜日

「自分リリースノート」を一年書いてみた

 GitHub のユーザープロフィールページで自分リリースノートを書いています。
毎月リリースでその月にやったこととかをまとめているのですが、それが書き始めて一年以上経ったので振り返り。

KPT
Keep

継続した
あのころに何をしていたのか振り返られるのが良い

Problem

当初ほどの情熱がない
定形的な情報の入力が面倒くさい

Try

ある程度の自動化をしたい
マンネリ化してるのでその他の欄をもう少し書きたい

最後に

このブログももうすぐ10年ですが、それと同じくらい続けられたいいですね。
ではでは。

2021年7月27日火曜日

技術書典11お疲れ様でした&ブログのこれから

技術書典11お疲れ様でした。
技術書典では虎空棘魚というサークル名で活動しておりますが、
こちらでは個人活動で得た知見をまとめて本にしています。
なのでこのブログの内容がベースにあったりします。

今後も本やブログの執筆活動は続けていこうかなーと思ってはいるのですが、
ブログの更新の方が最近滞りぎみな状況なのが現実。

年齢的なパフォーマンス低下だったり、生活スタイルの変化だったり、
いろいろと原因はあったり?なかったり?するのですが。
なんだかここ数年は、仕事場での知識・技術のインプット、そして仕事場でのアウトプットが充実しているから、な気がしています。
簡単にいうと仕事楽しくてそっちのけって感じです。

まぁそれはそれでいいことだとは思うんですがね。
業務上得た知見・技術を取り扱ってもいいんですが、
会社依存の部分を削ぎ落としたり、公開用にまとめる時間を明確に取れなくなった(取らなくなった)ので、あんまりワークしていないです。
(リモートワーク前は出社前に時間作って朝活してました。今は境界がなくなってイマイチ集中できない感じ)

結構書けるネタはあったりするんですよね。
Jenkins おじさんとまた戯れだしたので、そのへんとか。

言い訳並べてもしょうもないので、そろそろ結論書こうかなと思いますが、
ブログはやめません。もうちょいで 10 年なんでそこまでは頑張ります
ただ、ちょこちょここういった「思い」を書くことが増える、かも、しれません。

とりあえず、ここ1,2年で思ってるキャリア・働き方について書く、かも、しれません。

まぁ、ちょっと肩の力を抜いてやっていこうと思います。ではでは。

2021年4月3日土曜日

ウマ娘にハマってしまっていた

 最近、ブログ執筆ペースが落ちてるのですが
「ウマ娘」にハマってしまっていました。
中高生のときにパワプロにドハマリしてたころを思い出しますね。

今まであまりおおっぴらにはしてこなかったのですが、
自分がプレイしてるゲームの「自動化」を趣味でやってて、
Airtest 使った UI オートメーションだったり、RPA 使った通知システムだったり、
そんなのを作ってます。

ウマ娘では「ハルウララ金策」自動化をしました。
育成開始から目標失敗で終わるまで自動で進めてくれます。
テキトーに組んだシナリオですが、それなりに確度高くできてると思いますね。
(記者の吹き出しの色がミドリで、たまに選択肢のミドリと誤認識してたのを気をつけたくらい)

「ハルウララ金策」は見るに堪えない作業ですが、自動化すれば心も痛みません!(え
(実際には TP 足らなくてほとんど出番はないですが…)

Airtest 使えば誰でも簡単にできちゃうと思いますが、
この手のツールを使った自動化は BAN 対象になりうるので自己責任でお願いします。
では。

2020年1月8日水曜日

Happy 2020!

新年あけましておめでとうございます。
今年もよろしくお願いいたします。

さて、2020年。いよいよオリンピックイヤーとなりましたね。
私としては、オリンピックも気になるところですが、なんといっても今年は技術書典に初参加の年です!
東京来る前から本を書いてみたいと思っており、東京来てイベントなどに参加しやすい環境になったものの、行動に至らずな感じで2年経ってしまいました。
が、ようやく昨年決心して応募、今不安にかられている。。そんな新年でございます。



執筆状況ですが、まだ皆様にお見せできるものはありませんが、
一応・・・始めてはいます。。。(本を書くための調べごとに熱中しているのは内緒・・


技術書典8までの間はしばらく技術書典関係の投稿が増えると思います。(執筆環境どうしたとか、書けることは書いていきたい)
とりあえず、今月中になんとなく一通り書けたらいいなーと思っておりますので、見守っていただければと思います。
それでは。


2019年12月6日金曜日

[C++] 本当に private なところ

※ この記事は「C++ Advent Calendar 2019」6日目の投稿です。


private メンバー変数の R/W テスト
まずはこちらをご覧ください。
#include "iutest.hpp"
//origin>> #include "../../include/iutest.hpp"
#include <iostream>

int main(int argc, char** argv)
{
    IUTEST_INIT(&argc, argv);
    return IUTEST_RUN_ALL_TESTS();
}

class Test
{
private:
    int A:12;
    int B:4;
    int C:4;
    int D:12;
    int E;
public:
    Test()
        : A(0x777)
        , B(0x3)
        , C(0x4)
        , D(0x400)
        , E(1)
    {}
};

IUTEST_MAKE_PEEP(int Test::*, Test, E);

IUTEST(PeepTest, MemberVariable)
{
    ::Test test;
    IUTEST_EXPECT_EQ(1, IUTEST_PEEP_GET(test, ::Test, E));
    IUTEST_PEEP_GET(test, ::Test, E) = 4;
    IUTEST_EXPECT_EQ(4, IUTEST_PEEP_GET(test, ::Test, E));
}
https://wandbox.org/permlink/GqDQ4zeCrzv1HABq

private メンバーである Test::E への書き込み・読み込みができていることがわかると思います。

private メンバー変数(ビットフィールド)の R/W テスト
続いて、上でアクセスしている private 変数を E から A に変えてみます。

IUTEST_MAKE_PEEP(int Test::*, Test, A);

IUTEST(PeepTest, MemberVariable)
{
    ::Test test;
    IUTEST_EXPECT_EQ(1, IUTEST_PEEP_GET(test, ::Test, A));
    IUTEST_PEEP_GET(test, ::Test, A) = 4;
    IUTEST_EXPECT_EQ(4, IUTEST_PEEP_GET(test, ::Test, A));
}
https://wandbox.org/permlink/NRPvHweGaDp6HAdy

今度はコンパイルエラーです。

解説
プライベートにアクセスした方法
上のコードで利用したテスティングフレームワークは iutest です。
private メンバーへのアクセスはこのフレームワークの PEEP 機能を利用しています。
PEEP は template explicit instantiation で private にアクセス可能なことを利用して、private メンバーのアドレスを取得して実現しております。
詳しくは昔書いたこちらの記事を参考にしてください。(「ブログズミ: [C++] Private な関数のテスト」)

ビットフィールドにアクセスできなかった理由
error: address of bit-field requested
上記 PEEP の方法ではアドレスを取得できる必要があるため、
アドレスが取れないビットフィールドではアクセスできないわけです。
(言語法律家によるアクセスが可能な場合はビットフィールドでもアクセスできますが・・ : https://wandbox.org/permlink/zYC1hAYuqqixaEUn

まとめ
C++ にプライベートはあった

2019年9月17日火曜日

[Codefresh] Free Plan の内容がよくわからない・・

トップページの Pricing には Unlimited build / 1 small resource となっているが、
自分の今の Plan を見ると Free Plan ではあるが、120 build/month でマシンリソースはおそらく Medium resource になっている。

Doc:


My Plan:



120 build/month の制限は正直きついが、Samll resource になるのもきつい・・・

どっちがいいかってのはないのだが、正しい状態なのかよくわからないので正解が欲しい。
それに合わせて、パイプライン調整するので・・・

2019年9月4日水曜日

[CEDEC 2019] 行ってくる

今日から CEDEC 2019 ですね。
私はいつもの CI love T シャツで参加します!



では。会場で!!

2019年2月25日月曜日

GitHub Actions を試してみた





1ヶ月ほど前から使えるようになったので、ちょこちょこ弄ってました。

割と手こずったのでハマったところを書いておこうと思ったのですが、ちゃんとドキュメント読めよ。に落ち着いたので、ここに書くことはなくなりました。。。
ので、駄文です。

とりあえずやってみた
とりあえず、GitHub Actions でなにかをさせることができました。
「なにか」については、別途ブログにします。
今回は、GitHub Actions を使ってみた感想と、詰まったところを書きます。
使い方とかはすでに書かれている方も多いと思うので、ここでは書きません。


いろいろ手間取った
とりあえず、なにかさせることはできるようになったのですが、そちらは既存のアクションを使っています。最初、アクションを自分で用意してやっていたのですが、いきなり見よう見まねでやったのがよくなかったです。。。

サンプルリポジトリを用意して、ドキュメントを理解しながらやるべきでした。。。
https://github.com/srz-zumix/github_actions_sample


今後やりたいこと
GitHub Actions ならではなことができたらなーと思ってます。
ただ単に他の CI サービスと同じことをさせるのではなく、なにか便利なことができればなと。

では。

2018年10月9日火曜日

技術書展5に行ってきた

技術書展5に行ってきました。
実のところ、こういったイベントに今まで一度も行ったことがなかったのですが、技術書を書くことに興味湧いてきているので重い腰を上げて行ってきました。



開場したら事前に気になったサークルを見て、あとはぐるっと一周して帰ろうと考えてたのですが、考えが甘々でした。
11:00 くらいについたときには、すでに長蛇の列で会場の1つ上の階まで並んでました。。。
それでも、思ってたより早く入場できたのでよかったです。(30分ちょっと待ちましたかね)

入場後:
目的の場所に行こうにも人がいっぱいでなかなか前に進めず・・・とにかく人がいっぱいでしたね。
途中気になる本があったりしたのですが、もっと見本誌を読んで回ってもよかったな、とあとから思いました。(移動が大変なので、移動しながら見てくのがいいんだろうな)
ぷらぷらと物色して全体的に回ろうと思ってたのですが、大変そうだったのでやめました。
(ハードウェア系とか全然見てなかった)

戦利品:
今回の戦利品はこちらです。

初技術書展でしたが、いつになるかはわかりませんがいつかサークル側で参加できたら嬉しいなと思いました。
あらためて・・・というか、これから始めるんですが、執筆頑張ろうと思いました。
(表紙大事だなーとか、高い位置に目印必須だなーとか、参考にもなりました)

以上。

2018年6月12日火曜日

iutest を CMake のパッケージ検索に対応させた

issue の方で提案頂いたので対応しました。
https://github.com/srz-zumix/iutest/issues/40
といっても、私はほとんど何もしてません。
issue に貼っていただいたテキストをコピペした程度です。(yumetodo san ありがとうございますm(__)m)


この記事はもう少し続きますが、今回は(も?)まとまりのない駄文ですので、はい。
きれいにまとまったときにちゃんと読んで頂ければ大丈夫です…








そもそも私、find_package を知りませんでした。
まずはそこからお勉強しました。

参考にしたところ
find_packageの動作 - Qiita
CMakeを使ってみた (7) find_packageとpkg_check_modulesによるライブラリ探索 - wagavulin's blog

依存パッケージを探してくれるもので、見つけたパッケージのインクルードパスとかライブラリパスとかが取れるみたいですね。
で、その探索に使われるのが、FindXXXX.cmake だったり、cmake/xxxx-config.cmake だったり、cmake/XXXXConfig.cmake だったりするわけですね。
(Find の方は非推奨?っぽいですが)
CMake のことにまた少し詳しくなった気がしました。




しかしながら、これを提供する側はどうするのがいいのか?というのがイマイチわからず。
とりあえず、ルートに cmake フォルダを掘って配置しましたが、これでいいのだろうか?
そもそも CMake でサンプル/テストビルドを作るのは用意して深めのディレクトリに置いてましたが、これもルート直下に CMakeLists.txt を置くのが普通なのかな?

圧倒的 CMake 力不足・・・
もうちょっと情報集めて整理したいですね・・・



ここまでお付き合い頂き、ありがとうございます。
なんだか申し訳ない気持ちでいっぱいですが、ここまでお付き合い頂いたついでに・・・
なにか参考になるページや情報をお持ちでしたら、コメント頂けると嬉しいです。

では。m(__)m

2018年2月26日月曜日

git でブランチの総数を数える

やり方
git branch --remote | wc -l

なぜこんなことを?
今これを読んでいる方も同じ理由ではないかと思うのですが、
理由は開発しているプロダクトのブランチ数が多すぎてヤバイからです。

そして、その課題に対して対応した方の記事もこちらにあります。
多すぎるブランチをまとめて削除するためにやったこと - Qiita
私もどうにかしたいという気持ちがあり、たまたまなんとなーく数えてみようと思って検索したら、ヒットしました。

これそのまま使えそうだなと思いました。

Jenkins とかで定期的に実行して、マージ済みだったら問答無用で削除、マージされてなかったらリストアップしてメッセージ飛ばすとか、プルリク投げてたら除外するとか、するといいかも。
あとは、動作検証するときは git push -n で dry run にしとけば安全そう。
もしスクリプト書いて動かしてみたら、ここに追記するかもしれません。


ちなみに、数えてみた結果は言えません。。。
(289...少ないって思った...)

では。

2018年1月4日木曜日

せっかく東京に来たので作業カフェ(ノマドカフェ)をまとめていきます

新年明けましておめでとうございます。今年もよろしくお願いします。
さて、私は本日からお仕事です。

東京へ来てもうすぐ3ヶ月になり、日々の生活には大分慣れてきました。
とはいえ、普段行かないところのことは全くもってわからず。
正月は近くで初詣を済まして、ぐーたらしてました。
東京で正月を過ごすのにオススメなとことかあったら教えて下さいm(__)m
(京都市内はバスで大抵の場所に行けたので、その点は楽でしたね。混むから出ないけど…)


2018年最初の投稿は、(東京へ来て3ヶ月しか経ってませんが)憧れの?ノマドカフェ生活の一部を紹介します。ここいいよ!ってお店があったら是非是非コメントください!!



新宿~渋谷あたりが多いですが、たまには遠出もしたいですね。
行ったことがないところは、デフォルトの青色マーカーにしてます。そのうち行きたいところ。
暖色ほど個人的にお気に入りなところです。

のちのち、IFTTT のような連携サービスを使ってチェックインとかできるようにして、訪問回数を自動集計とかできたらなーなんて思ってます。

直近のベストカフェ
「スターバックスコーヒー西武高田馬場駅店」です!
出勤前に立ち寄れるってのが大きいのですが、9割以上電源席を確保できますし、Wifi もあるので完璧です。ただし、長時間の作業はちょっと椅子が辛いかもです。

全くもって万人受けしない情報でしたが、ちょくちょく更新しているのでよかったら見てやってください。
では〜

2017年12月5日火曜日

Google Home を買った

東京に来てだいぶ落ち着いてきたので、Google Home を買いました!

「すみません、お役に立てそうにありません」
そんなことばかり言わせてしまってますが、まぁまぁそれは今後に期待するとして…


やっぱり外部連携させたいですよね!
ということで、さっくりやってみました~

とりあえず IFTTT で連携
とりあえず IFTTT で連携できることはしっていたので、それを使うことにしました。

やり方とかは参考ページを見ていただければと思います。(二番煎じ、三番煎じなので)

「twitterで $ とつぶやいて」で $ の部分がツイートされるようにしてみました。
実際にやって結果がこちら。


入力判定のコツ
入力の判定にあたって、少しだけコツがありました。
入力は全部ひらがなで入ってくるわけではなく、アルファベットや漢字に変換されることです。
たとえば、「きょうはいつかえるの」をトリガーにしたい場合は、「今日はいつかえるの」では一致せず「今日はいつ帰るの」で一致しました。「ついったー」は「twitter」でした。
IFTTT では、キーワードは1つではなく複数設定できるので、いくつかバリエーションを登録しておくとイイかもしてません。


Google Home がどう認識したか確認する
Google Home がどう認識したか、ちゃんと確認できます。
セットアップで「Google Home アプリ」をインストールしたと思いますが、そちらのメニューの「マイ アクティビティ」を開いてください。
こちらがコマンドを認識させるのに役に立つと思います。


最後に
Google Home を使って色々やってみようと思うので、またここで報告できたらと思います。
では~


※今セールで半額なので買うには良いタイミングだと思います。

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

【楽天スーパーSALE限定価格】Google Home Mini チャコール
価格:3240円(税込、送料無料) (2017/12/5時点)



[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

【楽天スーパーSALE限定価格】Google Home Mini チョーク
価格:3240円(税込、送料無料) (2017/12/5時点)




ビックカメラなら Mini じゃない Google Home も半額です!

ビックカメラ.com | Google Google Home GA3A00538A16

2017年11月1日水曜日

初出社

本日、初出社でございます。
報告記事でブログ更新回数を稼いでいますが、ここ1ヶ月ほどやることが多くて全くもってプログラムをしてませんでした。(引越前の駆け込み観光とか引越後の観光とか)インプットがないとアウトプットもなかなかないわけで…

休暇も終わってこれから新天地での生活ルーチンが構築されていくわけですが、これまで通り趣味プロやブログを書く時間を作っていきたいと思います。(早速この記事は通勤中に書いてます)

では、今後ともよろしくお願いしますm(__)m

2017年9月28日木曜日

退職しました。

10月15日付けで退職しました
11月から新しい会社です。

ここ最近更新が滞ってますが、このブログは引き続きやっていこうと思ってますので、今後ともよろしくお願いします。

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">バイバイ京都 <a href="https://t.co/q5wAC2el6i">pic.twitter.com/q5wAC2el6i</a></p>&mdash; ずみっくす@東へ (@srz_zumix) <a href="https://twitter.com/srz_zumix/status/919141018754211840?ref_src=twsrc%5Etfw">October 14, 2017</a></blockquote> <script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

2017年4月10日月曜日

[Docker] 始めてみたけど躓きまくってるので備忘録として残しておくよ

注意:有益な情報はありません
完全な個人用メモです。
それでも引っかかる情報はあるかもしれませんが、今すぐバックすることをおすすめします。
自分でも調べてて感じましたが、変化が激しいので古い情報はすでに当てはまらないことがあります。
検索ツールで期間を絞ったり、バージョンを絞ったりして調べることをおすすめします。

前提条件

* Windows + Docker Toolbock
* Windows 10

VBoxManage.exe: error: Failed to create the host-only adapter

Vagrantでのhost-only adapterのエラーを回避する方法 on Windows10 - OSSを触りながらつぶやく日記

Failed to open/create the internal network 'HostInterfaceNetworking-VirtualBox Host-Only Ethernet Adapter

VirtualBoxでHost-Only Ethernet Adapterが原因でVMが起動しない時 | ぅゎょぅι゛ょっょぃ

ssh
docker-machine ssh default


ホストの作成からやり直す
"Docker Quickstart Terminal" ショートカットを使った場合、既にホストが存在すれば作成をスキップします。
なので、設定とか変えてもう一度ホストを作成しなおしたい場合は、
docker-machine rm default
としてからショートカットを起動します。


コンテナの一括削除
docker rm `docker ps -a -q`

不要になったイメージ・コンテナの削除
docker image prune
docker container prune
docker system prune


server misbehaving.
$ docker run hello-world
time="2017-02-24T10:07:02+09:00" level=info msg="Unable to use system certificate pool: crypto/x509: system root pool is not available on Windows"
Unable to find image 'hello-world:latest' locally
C:\Program Files\Docker Toolbox\docker.exe: Error response from daemon: Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on 10.0.2.3:53: server misbehaving.
See 'C:\Program Files\Docker Toolbox\docker.exe run --help'.

/etc/resolv.conf に nameserver 8.8.8.8 を追加する

$ docker run hello-world
time="2017-02-24T10:18:53+09:00" level=info msg="Unable to use system certificate pool: crypto/x509: system root pool is not available on Windows"
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
78445dd45222: Pull complete
Digest: sha256:c5515758d4c5e1e838e9cd307f6c6a0d620b5e07e6f927b07d05f6d12a1ac8d7
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.
 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://cloud.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/engine/userguide/


Error response from daemon: Get https://registry-1.docker.io/v2/: Method Not Allowed
いろいろやってるうちに、こんなエラーがでるようになった。
素の host を作り直したら、server misbehaving. も含めてなぜか解決した…
解決した理由がよくわからない…

No space left on device
boo2docker だと、tmpfs がメモリにマウントされるらしいので virtualbox のメインメモリを増やしてあげます。
docker-machine create に --virtualbox-memory オプションを指定すればいいみたいです。
ショートカットから start.sh を実行している場合は、一度 default を削除して、start.sh の create コマンドを実行しているところに、--virtualbox-memory を指定します。
もしくは、default を stop して VirtualBox マネージャーから設定を変更すれば OK です。

TMP じゃなくて普通にディスクサイズが足らない場合は、--virtualbox-disk-size オプションを指定するか、同様にマネージャーで容量増やしてください。
※ start.sh で docker-machine create -d virtualbox default してるだけなので、一度削除してから --virtualbox-disk-size つけるのが楽そうでした。


docker run -v > Error response from daemon: invalid bind mount spec
ホストディレクトのパスは絶対パスなので、c:\ とか書くと上記エラーになる。
Windows のパス形式 (c:\hoge) だとダメなので、/c/hoge のように書く必要があります。

PowerShell (Windows) で Docker コンテナにホストディレクトリをデータボリュームとしてマウントする際に pwd 相当のことをしたい - ひだまりソケットは壊れない

※ docker cp のときは Windows 形式

ホストとコンテナ間でのファイルコピー

docker cp from to

コンテナのパスは コンテナ名:パス のように書く。
e.g.
docker cp aa237:/path/to/dir hoge

コンテナ名は docker ps で確認できる。
ハッシュにしたくない場合は、run するときに --name オプションを付けると良い。

docker run 時に環境変数を設定する
dockerのコンテナ実行時にLANGなどの環境変数を設定する方法 - Qiita
docker run -e HOGE=hoge

ストレージの保存場所を変更する
MACHINE_STORAGE_PATH 環境変数にパスを設定すれば OK

Looks like something went wrong... Looking for vboxmanage.exe
VBOX_MSI_INSTALL_PATH 環境変数がなくなってないか確認する。(VirtualBox を更新すると消える?)



SVN: can't convert string from 'utf-8' to native encoding
Docker ではなく svn co したときのエラーですが、日本語ファイル名が含まれていると発生します。

以下を Dockerfile に追記して対応しました。
参考:「オデの日記@WEB系: svnでどんなに頑張っても"can't convert string from 'utf-8' to native encoding"エラーが治らない

RUN localedef -f UTF-8 -i ja_JP ja_JP.utf8
ENV LC_CTYPE ja_JP.utf8


最後に
一応これで docker を使い始めることができるようになりました。
が、Dockerfile 書きながらイメージを作っていくと、あれが足りなかった、あれが間違っていたと、何回もやり直しして想像以上に構築に時間がかかってしまっています。
なにかうまいやり方がある気がするのですが、知識不足が非常にネックになっている状況ですね。
どこか勉強会とかに行ったり、聞いたりするのがいいのかもな~
ということで、雑にまとめましたが、ここで書きなぐりを一旦終えます。
以上。




2017年2月21日火曜日

[雑記][Jenkins] Cppcheck Plugin のパイプライン対応がもうすぐ来そうな予感

こんにちは。
先日某所であった勉強会(?)で Jenkins おじさんたちと Jenkins なお話を久しぶりにしたので、滞ってた自宅 Jenkins のパイプライン化対応を再開しようかなと思ってます。

で、Cppcheck のパイプライン対応しようと思ったら、まだ対応してなくて保留していたのも思い出しました。

プラグインの対応状況
Plugin Compatibility with Pipeline : https://github.com/jenkinsci/pipeline-plugin/blob/master/COMPATIBILITY.md
こちらに主要な?プラグインの対応状況が載っています。
画像は2016年9月のときのものですが、現在もまだチェックがありませんでした。


しかし、issue を見てみると、もうすぐ更新ありそうな気配がしてました。
[JENKINS-35096] Add support for Jenkins Pipeline to the cppcheck-plugin - Jenkins JIRA

早く使えるようになってほしいですね!

※ 実は対応してないプラグインを頑張って使う方法を調べようとしてたんですが、https://github.com/jenkinsci/pipeline-plugin/blob/master/COMPATIBILITY.md を今見たらほぼほぼ対応してるっぽいので、待ちスタンスに切り替えました。

2016年12月29日木曜日

2016年総括

さて、2016年も残りわずかですが、いかがお過ごしでしょうか?
私は今日で仕事納めでございます。そう、ついさっきまで仕事してました…疲れた…orz
それはまぁ置いといて…

このブログもこれで2016年ラストです。
今年は 55 記事を投稿しました。これを入れて 56 なので、目標である週一ペースは守れたといって良いでしょう。

なんだかんだで Jenkins
今年の Jenkins 関連記事は全部で 16 ありました。以外と書いたなーという感想。
もう殆ど Jenkins 使ってないんですけどね。

ただ、今年は Jenkins 2.0 が出たり、勉強会で発表したりしたので、こうなったのかなと思います。

来年は使ってみたい CI サービスでまだ手をつけられてないのがいくつかあるので、そっちをやりたいなーと思いつつ、ローカル Jenkins のパイプライン化も終わらせたいと思っているので、また何個か書くと思います。

2016年に読んだ本

ブログズミ: 2015年最後の下書き供養

去年読み残した本はそのままに、今年も何冊か買って、そしてまだ読みきれてないです…あぁぁ…orz
増えた本はこちら。





Effective Modern C++ は1回だけ読書会に参加しただけで、それからあんまり読み進められてないです。
ブログズミ: 「Effective Modern C++読書会 vol.3」に行ってきた
(余裕があれば読書会にはもっと行きたかったんですが…)

カンバン仕事術は、大阪で読書会やってたり、繋がりのある人達が読んでたりしたので、読み始めました。
実践もしてます。だいたい2ヶ月くらいになりましたね。
本も読み進めて、改善していきたいですね。

さて、来年どうなるかはわかりませんが、再び下書きのタイトルを「2017年に読んだ本」に変更しました!
今年と同じ結果にならぬよう、終わらせることを始めていこうと思います。

初収益
ブログを始めて約6年、初めてアドセンスの振込があった年でもありました。
ブログズミ: このブログのアドセンス収益が最小支払額に到達しました
些細なことではありますが、嬉しいことです。
2017年もこのペースを維持して頑張っていこうと思います。

To Be 2017
2017年といえば C++17 ですよね。来年はもうちょっと C++ に触れたらいいなぁ~と思ってます。
あとは溜まってることをゆっくり消化したいと思います。

では、良いお年を。