[過去ログ] Docker Part5 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
411: 2021/01/23(土)23:21 ID:pBA41e7z(3/4) AAS
おいおいどんだけ巨大なimage作る気だよ
412(1): 2021/01/23(土)23:28 ID:pBA41e7z(4/4) AAS
例えば
Javaバージョンを10種類
Python 10種類
Ruby 10種類
の任意の組み合わせをサポートするとしよう
組み合わせごとにimage作ってたら1000回のビルドが必要
しかも静的なのでバージョン切り替えるのにコンテナ再起動が必要
アプリケーションユーザーがバージョンを選ぶことができない
DinD無しで動的に切り替え可能にするにはimageに30のパッケージを詰め込まなきゃならん
アプリケーションユーザーがバージョンを選べるようになったがimageが重すぎて駄目だ
省1
413: 2021/01/24(日)01:04 ID:7pSGFgQW(1) AAS
dockerインストールしてdocker image使えば動く
それが大きい
組み合わせとか無駄な労力
414: 2021/01/24(日)01:32 ID:zknkl/jN(1/4) AAS
そうじゃない
組み合わせで無駄な労力をかけなくていいようにDinDなんだよ
DinDじゃなきゃ組み合わせ爆発で大変な目に合う
415: 2021/01/24(日)05:44 ID:ghBgWKiE(1) AAS
CircleCI の、Win/Mac/Linux 環境でのマトリックスビルド
416(1): 2021/01/24(日)06:43 ID:M0zj61YH(1/5) AAS
>>412
> 組み合わせごとにimage作ってたら1000回のビルドが必要
1000回のビルド vs 1000回の入れ替え
だろ?
何も違いがないんだが
417(2): 2021/01/24(日)06:45 ID:M0zj61YH(2/5) AAS
あ、もしかしてイメージのビルドって
JavaやPythonやRubyのソースコードから
ビルドするって勘違いしてるのか?
Dockerイメージのビルドって単にファイルをコピーするだけだぞ
お前の言うファイルの入れ替えと何も変わらん
418(1): 2021/01/24(日)09:23 ID:5dJlz7Oi(1) AAS
>>417
Dockerエアプかよ
ビルドする事はあるだろ
外部リンク:github.com
419: 2021/01/24(日)10:09 ID:zknkl/jN(2/4) AAS
>>416
違う
420: 2021/01/24(日)10:09 ID:zknkl/jN(3/4) AAS
>>417
変わる
421: 2021/01/24(日)10:10 ID:D5AZ3z2z(1) AAS
nixもalpine同様パッケージバージョンそれぞれで固定は出来ないが、
過去の特定時点でのリポジトリを使う事や
不安定版と安定版を組み合わせる事は出来るみたい
Dockerイメージのビルド機能はDockerデーモンは要らないが、
イメージに対して追加でコマンドを実行する(runAsRoot)にはKVMが必要
Nested Virtualization非対応のWSL2とかGitHub Actionsでは使えないのでハードル高い
各パッケージのインストールにはkvm不要なのに
runAsRootを使わずにDockerfileでコマンド実行すればkvm無しでも良いけど
それちょっとめんどい
nixだけで完結させたいね
422(1): 2021/01/24(日)11:44 ID:M0zj61YH(3/5) AAS
>>418
ビルドする「事がある」なら、ビルドしないような
Dockerfileにするのが本当の解決方法
423(1): 2021/01/24(日)12:11 ID:lUIISiii(1) AAS
>>422
Amazonはgoのbuildしててアホってこと?
おまえAmazonより賢いの?
424: 2021/01/24(日)12:29 ID:em6DyPtH(1/2) AAS
dockerには様々な使い方ができてそれが便利なんだが
どうも「僕の考えた正しい使い方」以外に強烈な拒否反応を示す輩がここに住み着いてるみたいだね
こいつのせいでいつも荒れる
425: 2021/01/24(日)18:40 ID:M0zj61YH(4/5) AAS
>>423
アホなのか?ビルドしても問題ない場合の話なんか誰もしてねーよ
ちゃんと読んでみろ、1000回のビルドに困ってるやつが
「ビルドしててアホ、俺はDinDを使ってる」って言ってんだろ
そして、1000回のビルドの組合せ爆発を行わせないために
ファイルを入れ替えて、1000回のテストをやるって
言ってるんだぜ?どっちみち組合せ爆発してるじゃねーかwww
426: 2021/01/24(日)19:29 ID:zknkl/jN(4/4) AAS
組合わせビルドだと1000の追加容量
全部のせだと30の追加容量
DinDなら追加容量ほぼなし最適化もテストも各種イメージ提供元がやってくれてる
427(1): 2021/01/24(日)19:39 ID:M0zj61YH(5/5) AAS
ほらな?馬鹿だったやろ?
レイヤーを共通で使うってわかってないんだよ
428: 2021/01/24(日)20:38 ID:em6DyPtH(2/2) AAS
>>427
組み合わせだからレイヤー使っても減らんぞ?
429: 2021/01/25(月)00:16 ID:4U2REjHr(1) AAS
どんなに組み合わせがあろうと、OSのレイヤーは
全部共通だってまだ気づいてないのかな?w
430: 2021/01/25(月)00:18 ID:mUuiFIpJ(1/2) AAS
スベってるよきみ
431(2): 2021/01/25(月)12:13 ID:vwTpfMH/(1) AAS
DockerコンテナじゃなくてMacに直接ツールをインスコしたいんだが
バージョン含めて統一は難しいな
asdfは一見バージョン切り替えに便利そうに見えるが、
とうも一部プラグインのインスコは自動ではないようだ
brew使ってインストールとか手動でさせたらむずいし、バージョンの組み合わせによっては失敗するかも
nixはインストール自動化は出来るが
関数型言語で書く必要があるのが何だかなあ
Mac上で直接やるの諦めて
開発用のパッケージが入ったDockerイメージを配った方が良いかも
IDEとの連携はVSCodeのRemote Container拡張機能とかでする感じで・・・この拡張機能まだプレビューだけと
432: 2021/01/25(月)12:34 ID:UrQIjnTy(1) AAS
>>431
無断転載禁止
プログラマの雑談部屋 ★128
2chスレ:prog
433: 2021/01/25(月)12:49 ID:PDbAdQWp(1) AAS
>>431
これは本当に必要か?手段が目的化していないか?
と自分に問うクセを付けたほうがいいよ
434(1): 2021/01/25(月)12:56 ID:5aG/RVkH(1) AAS
asdf とか、日本人が作った、バージョンマネージャーのanyenv は、
主に、Ruby, Node.js などの言語のバージョンを指定するだけ
アプリ・フレームワーク内での、依存モジュールを指定するには、
RubyのBundler, Node.jsのnpm/yarn などを使う
例えば、Ruby on Rails なら、まず、Ruby 2.6 で、Rails 6 などを先に決めてから、
それに合った依存モジュールとして、
サーバー側はRubyのBundler, GUI側はJavaScriptのYarnで決めていく
435: 2021/01/25(月)13:17 ID:L2NMho+v(1) AAS
Dockerで複数のイメージを作っても
同じ内容は共通化されるんですよ
だからファイルサイズは増えません
バイナリを入れ替えるとかいう変なやり方と
使用する容量はほぼ変わりません
436(1): 2021/01/25(月)14:49 ID:1bwGrDuX(1) AAS
内容が同じなら共通化されるわけじゃない
Dockerfileのコマンドが同一かどうかだろ
パッケージをA,Bの順で入れるのとB,Aの順で入れるのでは結果イメージが同一でも別物
437(2): 2021/01/25(月)15:31 ID:nCtpepmL(1/4) AAS
>>436
マルチステージビルドとかしらんの?
一つのDockerfileに
FROM as java-x.y.x
…
FROM as ruby-x.y.x
…
FROM as python-x.y.x
…
とか書いてあれば、別のDockerfileに同じことが書いてある時に共通化されるんだよ
省11
438(1): 2021/01/25(月)15:37 ID:CdDAXNrB(1/3) AAS
マルチステージの動作確認ってどうしてるの?
439(1): 2021/01/25(月)15:45 ID:mUuiFIpJ(2/2) AAS
>>437
それ結局1000容量必要じゃんw
440(1): 2021/01/25(月)15:55 ID:nCtpepmL(2/4) AAS
>>439
使うたびに消すのだからいらない
それ言ったら、DinDだって1000容量必要なわけで
イメージ毎にファイル差し替え=コピーしてるでしょw
441(1): 2021/01/25(月)15:56 ID:nCtpepmL(3/4) AAS
>>438
他のやり方と何が違うと思ってんの?
442: 2021/01/25(月)15:57 ID:nNV9lGQp(1) AAS
nodeをdocker runして複数のバージョンのnodeで自作ライブラリをテストするとする
ソースコードのディレクトリをボリュームマウントして
npm ciでライブラリをインスコして
npm run test
これの繰り返しで良くね?
CIが普通にLinux仮想マシン使えるやつならDinDにはならん
Docker内でしかコマンド実行できないCIだとして
そのCIに複数のイメージで同じコマンドを実行する機能とか無いか?
443(1): 2021/01/25(月)16:24 ID:CdDAXNrB(2/3) AAS
>>441
必要なディレクトリが分からないケースがあるので困ってる。後はパスをどうやって通すのか。
本とかあれば教えて
444: 2021/01/25(月)16:25 ID:nCtpepmL(4/4) AAS
>>443
そんな内容で他人に通じるとでも思ってんの?
445(1): 2021/01/25(月)18:34 ID:zCNrI+rm(1/2) AAS
↑単にnodenv,pyenv,rbenv入れて切り替えれば良いだけじゃね?
マスターは全部(30全部のせ)インストールして。
jdkだけ無いから、dockerfile内でJDK_HOME変数いじる。
446: 2021/01/25(月)18:59 ID:R9sUsxwm(1/2) AAS
なんかしらんがどうしてもDinD使いたいんだろうさw
447(1): 2021/01/25(月)20:14 ID:RyTuSemV(1) AAS
>>440
実行するたびにビルドすんの?もうめちゃくちゃだな
DinDなら30の容量で済むのに組み合わせの事前ビルドだと1000必要
DinDだと実行するまで容量を食わない
448(1): 2021/01/25(月)20:15 ID:iGDBOFL2(1) AAS
>>445
依存パッケージのバージョン競合が不安になるな
449: 2021/01/25(月)20:22 ID:zCNrI+rm(2/2) AAS
>>448
依存パッケージは各々の環境配下に入るんだから別に関係ない。
450(1): 2021/01/25(月)22:25 ID:R9sUsxwm(2/2) AAS
>>447
各言語、お前がいう30の容量だけ事前ビルドして、
残りは実行時にビルドするんだよ
ビルドって言ってもファイルコピーと変わらない
お前の言う「差し替え」=実行時ビルド
451(1): 2021/01/25(月)23:01 ID:1CRbLlPN(1) AAS
>>450
実行時にビルドとかw
もうめちゃくちゃ
452(1): 2021/01/25(月)23:32 ID:CdDAXNrB(3/3) AAS
マルチステージだから容量食わないけど、毎回ビルドと言ってるキチガイは何なの。
毎回ビルドする位なら、オンプレに入れて各言語の仮想環境使った方が遥かに効率的でマシ。何分まつのやら
453: 2021/01/26(火)00:21 ID:+DX42UVH(1) AAS
結局のところDinDが一番スマートじゃん
454: 2021/01/26(火)05:53 ID:qucDULM3(1/2) AAS
別に此処で聞くような事では無いって気がするね。
要するに、どうしてもDinDが使いたいって話だろ。
他の解決策はあると思うし、DinDの設計意図はそういう事(組合わせ)では無いと思うけど
DinD使ってドヤ顔したい奴はそれ自体が目的だしね。
455: 2021/01/26(火)13:06 ID:tolCEvvD(1) AAS
>>451 >>452
実行時ビルドにちゃんと理由言って反論しなよw
俺は認めたくないって言ってるだけじゃんかwww
456: 2021/01/26(火)13:12 ID:ly8STgW0(1) AAS
起動に5分かかるようなシステムはイラネ
457: 434 2021/01/26(火)13:18 ID:cGWhBQtK(1) AAS
毎回ビルドはしない。
頻繁に変わるソースコードなどは、bind mount・共有フォルダ、
DB のデータなどは、Docker 管理のdata volume
複数言語のバージョンマネージャーのanyenv なら、
which ruby
~/.anyenv/envs/rbenv/shims/ruby
which node
~/.anyenv/envs/nodenv/shims/node
458: 2021/01/26(火)15:30 ID:nxNozP8d(1) AAS
実行時ビルドとかゴミすぎて笑うわ
459: 2021/01/26(火)18:22 ID:6fMbCpW5(1/4) AAS
なんか、実行時ビルドが数分かかるとか勘違いしてるっぽいなw
ファイルコピーしかしないのに、どこに時間がかかると思ってるんだろう
460: 2021/01/26(火)18:42 ID:jD2ztmnc(1) AAS
うだうだ言ってねえでソース晒せよ
461: 2021/01/26(火)18:50 ID:6fMbCpW5(2/4) AAS
CIでビルドすることなんて当たり前ですし
[速報]GitHub Actions発表、Dockerコンテナの連係によるワークフローを自由に定義可能。GitHub Universe 2018
外部リンク[html]:www.publickey1.jp
462(1): 2021/01/26(火)18:51 ID:6fMbCpW5(3/4) AAS
外部リンク:cloud.google.com
GitHub でのビルドの実行
Cloud Build では、Cloud Build GitHub アプリが利用できます。このアプリでは、
新しい commit を GitHub に push するごとにコードを自動的にビルドできます。
このチュートリアルでは、アプリのインストールと構成方法、GitHub でビルドを自動でトリガーする方法について説明します。
463: 2021/01/26(火)19:26 ID:qucDULM3(2/2) AAS
>>462
そのリンクはビルド→デプロイの自動化、デプロイ→テストの自動化であって
「プログラムの実行前のビルド」ではないけどね。
てかごく一般常識的に、実行前にビルドなんてしない。
pull→ビルドすら長ったらしいので何とか短縮する方法考える位だし。
464: 2021/01/26(火)19:46 ID:vDnTAoSR(1) AAS
真っ当なビルドと偏執狂のビルド
区別がつかない人は怖い
465: 2021/01/26(火)19:47 ID:4CLz/Wwf(1) AAS
結局DinDが一番スマートだったわけだ
466(1): 2021/01/26(火)23:42 ID:6fMbCpW5(4/4) AAS
そのスマート(笑)なDinDのやり方ってやつを
ここで言ってみなさいよ。何も言ってない。DinDといいたいだけ
467(2): 2021/01/27(水)01:54 ID:6ru/T4M8(1/4) AAS
>>466
コンテナ内でdockerソケットにアクセスするだけだ
余計なビルド不要、imageベンダによる最適化、テスト済、容量も最小限で済む
468(1): 2021/01/27(水)08:23 ID:vTJZsoCB(1) AAS
>>467
え?Dockerコンテナ同士が違っていたら
アクセスできないじゃんw
469(1): 2021/01/27(水)08:35 ID:R3wK2cxv(1) AAS
実行環境の制限がないならDINDせず
ホストOSでやれば良くね?
何やろうとしてんのか知らんけど
470: 2021/01/27(水)09:03 ID:6ru/T4M8(2/4) AAS
>>468
ぷっ
471: 2021/01/27(水)12:40 ID:OF2MpqJA(1) AAS
>>467
DooDな
472(1): 2021/01/27(水)15:32 ID:STt+4nmF(1/2) AAS
なんでわざわざDockerの中でテストしようとしてるんだろう?
普通にホスト上でdocker-composeとか使ってテストすりゃいいんじゃん
DinDなんかいらね
473: 2021/01/27(水)15:32 ID:STt+4nmF(2/2) AAS
>>469
見てなかったw 同じこと言ってたw
474: 2021/01/27(水)16:50 ID:A+1Xd6VN(1/2) AAS
>>472
俺も思った。
最初>>437のような問題を抱えて、それが何故DinDだかDooDだかで解決するんだろうかと思ってたら、
異なるバージョン間の問題は別コンテナっぽいよな。普通にやってりゃ良いじゃんとしか思わないw
475(1): 2021/01/27(水)18:25 ID:6ru/T4M8(3/4) AAS
普通にやったら非効率なのでDinDが要るんだよ
476: 2021/01/27(水)18:26 ID:wjyDjF3m(1) AAS
>>475
君、そもそも会話する気ある?そんな説明じゃ分からん
477: 2021/01/27(水)18:28 ID:6ru/T4M8(4/4) AAS
ブーメラン
478: 2021/01/27(水)19:46 ID:A+1Xd6VN(2/2) AAS
そろそろ ID:6ru/T4M8 は無視で良くね?
479: 2021/01/27(水)20:12 ID:tza06nUs(1) AAS
逃
480: 2021/01/27(水)22:05 ID:EVyQ39mm(1) AAS
docker in dockerは使いみちあるとしても
頭悪いやつがvirtuabox in virtuaboxのように
ぐだぐだにされたら迷惑だろ
481: 2021/02/05(金)23:45 ID:h51rF+BK(1) AAS
しばらく放置してたらpodmanいいかんじになってた
docker-composeもほとんどそのまま動く
482(1): 2021/02/06(土)01:01 ID:MHK1//hz(1/2) AAS
次スレはコンテナでまとめたほうがいいと思う
k8sも合流させたほうがもりもりする気
483: 2021/02/06(土)09:04 ID:c/zMUkuk(1) AAS
>>482
同意
484(1): 2021/02/06(土)09:14 ID:+DABQIDx(1) AAS
ここ埋めてからにしろよ
Docker代替のpodman専用スレ (Dockerの話題禁止)
2chスレ:linux
485: 2021/02/06(土)10:33 ID:/TPKq5C8(1/3) AAS
>>484
Dockerの話禁止とか了見の狭い掲示板を誰が使うんだ?
自分で埋めれば?
486(1): 2021/02/06(土)10:41 ID:/Dog5YR/(1/2) AAS
最近まじでdockerの影が薄くなってきたな
docker composeが動きだしたから、お手軽開発環境としても存在価値が薄れてきてる
dockerの利点はせいぜいbuildkitとwindows、macで動くことぐらいか
487: 2021/02/06(土)10:42 ID:/Dog5YR/(2/2) AAS
訂正
podmanでdocker composeが〜
488(1): 2021/02/06(土)11:58 ID:h3ayZ9Ft(1) AAS
>>486
Windowsで簡単に使えることはメチャメチャ利点だけどな!
489(1): 2021/02/06(土)12:09 ID:tN9O0Dlo(1) AAS
docker composeはdockerに依存してるんだがw
490: 2021/02/06(土)12:13 ID:zbZuNSE3(1) AAS
OCI対応してればどのコンテナランタイムでも動くんだろ?
好きなの使えよ
491: 2021/02/06(土)12:20 ID:oaoku093(1/2) AAS
>>488
事務職ならあるかもだけど開発者なのにWindows縛りってのも考えにくい
492: 2021/02/06(土)12:27 ID:oaoku093(2/2) AAS
>>489
docker composeはdocker apiに依存してる
そしてその代替としてpodman apiというのがある
493: 2021/02/06(土)12:37 ID:9J6g73ca(1) AAS
何か知らんけどdockerのコマンドと互換性ないの?
podmanって
494: 2021/02/06(土)12:38 ID:wfHwVn4f(1) AAS
いつも思うけどなんでそんなに代用品を使わせようとするのか理解できないんだよなぁ
赤帽とか普通なら信用できんだろ
495: 2021/02/06(土)13:04 ID:/TPKq5C8(2/3) AAS
まあ、Flashの例もあるからね。
別に悪いわけではないし、標準に近い機能であっても業界から嫌われる技術ってのはあるんでしょ。
大体その本尊が他社の要望に答えないって事なんだろうけど。
496: 2021/02/06(土)13:48 ID:/etxQc2p(1/2) AAS
podmanのほうがコミュニティが活発でリリース頻度が高い
497: 2021/02/06(土)13:51 ID:/etxQc2p(2/2) AAS
どんなプロダクトでも黎明期を超えて落ち着いてきたらセキュリティ、軽量さのために余計なもん削ぎ落とした物に取って代わるもんだよ
498: 2021/02/06(土)15:28 ID:M2uozTfZ(1) AAS
何時になるのかはわからんけど本格的に使ってみてもいいかなって思うのはver3.1からだろ
黎明期は仕様変更多すぎて手を出したくない
499: 2021/02/06(土)19:49 ID:MHK1//hz(2/2) AAS
docker swarm使いやすくてオヌヌメです
500: 2021/02/06(土)20:07 ID:yp1IqyME(1) AAS
今だったらk0sのほうがいいんじゃないの
501: 2021/02/06(土)20:10 ID:/TPKq5C8(3/3) AAS
いらんわ。
502(1): 2021/02/07(日)07:17 ID:271PT8oq(1/3) AAS
Docker ボリュームを全て、別のホストマシンに移したいと思っていますが、
ボリュームのデータの移し方について質問があります。
いま考えているのは方法は次の通りです。
1、新しいDockerホストにおいて、旧ホストと同じになるようにdocker create volumeコマンドでボリュームを作成します。
2、新旧のDockerホストで、Dockerサービスを停止
3、対象ボリュームについて/var/lib/docker/volumes/volume-test/_data/ のように指定してrsyncで新しいDockerホストにコピーします。
rsync -avz /var/lib/docker/volumes/volume-test/_data root@newdockerhostname:/var/lib/docker/volumes/volume-test/
その後、新しいDockerホストで、コピー済のはずのvolumeをつかって、
コンテナを復元します。
省3
503: 2021/02/07(日)09:02 ID:Klq9yVmM(1) AAS
>>502
コンテナ管理するのにオーケストレーション使うからそんなこと考えたことないけどそれで動くならシンプルでいいんちゃうか?
504(1): 2021/02/07(日)09:33 ID:5dw25W1G(1) AAS
ボリュームの移動とか考えてる時点でバッドプラクティスにハマってる気がする
ほんとに永続化したいボリュームにはネットワーク越しのストレージを使うんだよ
そうすりゃコンテナが別のマシンで稼働してもいちいちボリュームを移動させる必要はないだろう?
コンテナは同じマシンで動き続けることを前提にしちゃだめ
505: 2021/02/07(日)09:37 ID:lg7zbpCt(1/10) AAS
GitHub ActionsはDockerHubの制限免除だって
506: 2021/02/07(日)09:39 ID:lg7zbpCt(2/10) AAS
外部リンク:github.com
For publicly accessible containers we are working with docker hub to make sure you will not be impacted by
the new rate limits. If you need private containers we still do not have a solution for that problem for forks of public repos.
公的にアクセス可能なコンテナについては、Docker Hubと連携して、新しいレート制限の影響を受けないようにしています。
プライベートコンテナが必要な場合でも、パブリックリポジトリのフォークに関するその問題の解決策はありません。
507(1): 2021/02/07(日)10:06 ID:O8a0UlPi(1) AAS
>>504
ただの老朽更新とかの移行だろ
そんなもんに共有ストレージとかバカじゃねーの
508: 2021/02/07(日)10:25 ID:vLjACvPj(1/3) AAS
AWSならEBSボリュームのスナップショットで十分
ASG内のインスタンスが起動する時に
EBSボリュームをマウントして
ECSタスクではそのボリューム内のディレクトリをマウントする
EFSみたいなマネージドNFSは速度や互換性に問題無ければ使っても良いんじゃね
俺は使わないけど
509: 2021/02/07(日)10:37 ID:+SWvD/Px(1/5) AAS
>>507
バカだな
ストレージを外部化しておけば結合が疎になりストレージのメンテナンスもしやすくなるだろ
510: 2021/02/07(日)10:40 ID:+SWvD/Px(2/5) AAS
だいたいコンテナなんてのはどのマシンで動くかわからねえんだ
ローカルボリュームに依存しちゃだめだ
上下前次1-新書関写板覧索設栞歴
あと 492 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.204s*