golang を docker で build する意味に関してはいくつかある。
vendoring tool (依存パッケージのバージョン含めた管理)の代わりにセットアップされたイメージを用意するという方法。
最近は golang から dep という公式ツールが出て今後の方針が見えてきたとはいえ
テストなどを考えると vendoring の処理自体を毎回するとか面倒なのでコンテナ使うのは悪くないと思う。
ほかは cgo の問題(golang の中で c をインラインで書ける機能)。
golang の net/http はそのままで名前解決の部分が libc に依存しているので build 環境に左右される。
これは debian などで glibc 環境で build したイメージが glibc へダイナミックにリンクされてしまい
Alpine の musl libc で起動できないという現象(または逆)がある。
net/http の場合は CGO_ENABLED=0 や -a オプションなどで golang での実装へ回避できるが、
mattn/go-sqlite3 など中身は C のライブラリへのリンクしか無いと言うものが結構ある。
mattn/go-sqlite3 場合だと動作環境に sqlite のライブラリを入れるか
ldflags などを工夫して static バイナリをなんとか作るかという面倒なことをする必要がある。
docker イメージならライブラリ突っ込んで置けばいいので楽。
あとは、コマンドの統一。
いろいろなコマンドを docker run hoge 的に統一できるということ。
docker hub に登録しておけばどの環境でもこのコマンドで取得して実行できる。
golang の場合は容量的に空のイメージである scratch イメージを base にバイナリ放り込むという感じかな。
これを頑張ってる例としては whalebrew。
Docker
■ このスレッドは過去ログ倉庫に格納されています
2017/02/20(月) 23:14:46.37ID:GZ1cgO8N
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】福原遥(まいんちゃん)とサッカー日本代表の久保建英がまさかの電撃結婚★7 [爆笑ゴリラ★]
- 大阪・清風高校で「カンニング指導」後に生徒が自殺「無関係とは決して思っていない」両親が1億円余の損害賠償求める★2 [七波羅探題★]
- 1日500円生活で3食「フライドポテト」を食べ続けた少年の最期……病院から帰宅直後に突然死した理由 [おっさん友の会★]
- 「ロシアへの姿勢変えたのは日本」プーチン大統領 関係悪化は日本の責任との認識示す [煮卵★]
- 【サッカー】なでしこジャパン、難敵・北朝鮮を下し大会3連覇の金メダル!PK戦の死闘を制し史上最多4度目Vの快挙 [ゴアマガラ★]
- 【電撃結婚】「チャラいんじゃないかと1、2年スルーしていた」と知人証言、“ド真面目”な福原遥の心を動かした久保建英の“猛アタック” [muffin★]
- 【実況】博衣こよりのえちえちこんこよ高校2026-2年目春甲子園-🧪★8
- HanaE.sys : ‘Patch to Stability▎’
- HanaE.sys : ‘Patch to Stability▎’
- HanaE.sys ‘Patch to Stability▎’
- HanaE.sys ‘Patch to Stability▎’
- HanaE.sys - ‘Patch to Stability▎’