Docker Part3
■ このスレッドは過去ログ倉庫に格納されています
みんな、マイクロサービスアーキテクチャ導入してますか? マイクロサービスって 2つのマイクロサービス間のデータのやり取りはどうする? Dockerが解決するのはアプリのデプロイまで マイクロソフト的には 分離性を高めるため HTTPリクエストが来た時に別サービスへ同期的に取りに行くのではなく バックグラウンドで予めデータを同期する方がお勧めらしい が面倒そう 適当なことやると2つのサービスでデータの不整合が生じる 実装に関する説明をしているのにカタカナの単語説明ばかりで 具体的にこうしている、というコードが少ないアーキテクチャは駄目フラグ て気がするけどな。J2EEでトランザクション分離がどうのこうのとか長々と 説明するけど具体的なコードもそれにふさわしくウザくて結局普及はしなかった。 まぁ自分トコさえ便利に使いこなせればいーやってカンジなんじゃねえの Amazon ECRのマネジメントコンソール 久しぶりに見ると ・タグのイミュータビリティ ・イメージのスキャン なる機能が追加されてた https://dev.classmethod.jp/cloud/aws/ecr-repository-scan/ 古いバージョンのソフトウェア使ってて CVEの脆弱性あったら教えてくれる機能? あまぞんのブログURLがNGワードで書けない 「専任エンジニアが2人以上欲しい」: Kubernetesの自前運用は難しい? はてなの撤退事例 はてなのMackerelチームはKubernetesクラスタを自前で構築して運用していたが、撤退を選択したという。 なぜ、Kubernetesの運用を諦めて撤退を選んだのか。 はてなのMackerelチームでSREを務める今井隼人氏が語った。 https://www.atmarkit.co.jp/ait/articles/1911/08/news009.html Kubernetesは試したけど本番環境に使う自信が無いわ >>115 当たり前。 Kubernetesクラスタを自前で運用すると言うのはアマゾンで言えばASG を自分たちで運用しようってな物じゃないの? 何故そんなことをする必要が在るのかと。 Kubernetesのエコシステムの図一つをとってもツールだらけで この1つ1つを学習しろと言うのか?学習コスト高すぎで馬鹿かと・・・。 しかもそこまでやっても、汎用的では無いからVMはVMで残さなければならない。。 >>115 わかる。あれ複雑過ぎ 記事読んでないけど、少数の台数で構築してもコントロール不能に陥るだけだと思う。 Kubernetesが生きるのは100台とかで、贅沢なリソースがあって その中で何台か生きてればいい。他はそのうち生き返るって状況が作れてからからだと思う 台数が少ないと、何台か死んだら絶滅するw 結局Dockerは何が魅力なんや? 現段階で本番で使えないのはKubernetes?それともDocker自身? 前にもちょっと書いたけどローカルの開発機をDockerで作っても 本番機で使えないのなら二度手間になるだけだから意味が無い。 >>76 見たいな話は勿論、本番環境の事を言ってるんだよな? >>120 76はVMに対する「コンテナ」の利点を言ってる kubernetesもdockerもコンテナを動かせる。両方本番で使える。 >>121 そんな事は分かってるよ。両方本番で「使える」ことも分かってるよ。 でその結果>>115 で止めたと言ってるんでしょ?使えるけど複雑すぎると。 でそれを読んだ俺の感想はDockerはともかく、それ以外のエコシステム含めると 学習コストも高すぎるし、本番をVMで作ってローカルの開発環境をDockerで作ると 二度手間でしかない、といっている。 で、二度手間に目をつぶってでも、取り組んだほうが良いDockerの魅力は何なのかと。 >>122 つまり本番=VM、ローカル開発環境=dockerを推してるやつがどこかにいてそのメリットは何かが聞きたいのね 俺は推してない でも猫も杓子もK8Sって感じで 後はAWS限定のECSか Swarmってやつしか無いよね K8Sは立てるだけならツール使えば出来るが 互換性破壊が多くてアップグレードが壁になる はてなはテスト環境でアップグレードに失敗して撤退 kubesprayが実装をkubeadmに変えた時期と 担当者の退職・移動が重なったと でもそれって担当者の退職が一番の原因じゃね? 移行先はEKSを検討しているらしい ECS、Fargateは既に一部で使っていて まずECSに移行後、EKSへの移行を目指す手筈 >>120 > 結局Dockerは何が魅力なんや? 配布 WindowsのDLL Hellの話知ってるか? 昔、Windowsで大問題になってな アプリをインストールするときに、一緒にDLLもインストールするんだが 当時はアプリにシステムDLLが含まれていたりして、 インストールするとOSのDLLを書き換えて、他のアプリが動かなくなったりした。 今ではそれが改善されて、アプリはシステムDLLを書き換えない、 必要ならアプリのディレクトリにDLLを入れたり、 .NETなんか複数のバージョンをインストールできて適切なものを使えるようになってる。 Linuxでもそれは同じでな。ディストロのパッケージだけ使ってるなら別に問題ないんだよ。 そのバージョンで動くように頑張ってるのがディストロの仕事だから でもな、俺ら(開発者)がなにか作る時、ディストロのパッケージのバージョンを 色々考慮しないといけなくなる。ディストロアップデートしたら、そのパッケージで動くか検証したり パッケージの新しいバージョンを使う時、それが今のディストロでちゃんと動くのか検証しなくちゃいけない。 それはつらいだろ?だからもうアプリに全部含めちゃいましょう。 というのがDockerなんだよ。(互換性が超高くて小さいカーネル以外)全部アプリに含めてるから あちこちに簡単に移動できたり、バージョンアップできたりするんだよ。 ここまで言えば分かる通り、開発者以外にとっては関係ない道具 ディストロのパッケージ使ってるだけのやつとか、仮想マシンと勘違いしてるやつにはようはないから >>120 > 前にもちょっと書いたけどローカルの開発機をDockerで作っても > 本番機で使えないのなら二度手間になるだけだから意味が無い。 言葉がおかしい。開発「機」を作るわけ無いだろ? 作るのは開発アプリ。それをいろんな、開発機、テスト機、本番機で そのまま使うことができる。 >>120 > 現段階で本番で使えないのはKubernetes? Kubernetes。まあ使えないことはないと思うよ。 ただ使うためには労力が多すぎて、発想の転換に迫られる。 数台の本番環境を落ちないようにメンテすると言うより、 システム全体で稼働するように設計しないといけない 個でじゃなくて群で考えてメンテナンスの仕組みを作らないといけない トラブルが合った時、個々のマシンを観察して情報を判断するのではなく 群からデータを集めてそれらを分析して、トラブルの原因を追跡するとか 個々のマシンをアップデートするんじゃなくて、群の中の一部分を (半ば自動的に)入れ替わっていくという感じの設計が必要 失敗すると次から次へとマシンが落ちていって制御不能になって 最悪データの損失が発生する。 Googleみたいにすでに大量のマシンが存在して、個々のマシンの観察なんて やってられないっていうのなら、Kubernetesの出番だけど そうでない場合は、大変なだけ。 >>122 VMに対して、Dockerは「共通の部分のリソース(Kernel)は 共通で使ったほうが良くない?VMだとCPU上にほとんど変わらん Linux Kernel複数動いとるやん!」 という提案にそうだねと思ったから使ってる。 メモリとCPU大量につみゃいいじゃん。て言われりゃ、あぁそうだね。 俺はやだけどね。ってだけだ。 たまに、また新しいもの覚えなきゃいけないんすか・・ とか言われることあるよ。そんなの右翼、左翼の違いと一緒じゃないの? 社内でVM陣営(右派)とDocker陣営(左派)に別れちゃったり。 新しもの好きの奴らのほうがハイパフォーマーが多いので VM陣営は化石になっちゃうんだけどな。 安定度とかはどうなのよって言われると、そりゃVM陣営(保守派)。 でも、新しもの好きはそういうの気にしない。なんとかなる!とか 思っちゃってる人ばっかだから:p >>124 > でもそれって担当者の退職が一番の原因じゃね? 担当者の退職は避けられない ってかインフラでは属人性をなくせ、暗黙知を減らせって やってきただろ?そのための道具だったはずなのに。 属人性は無くなったが、最低限必要な技術レベルと経験が高くなりすぎてしまって 代わりになる人間を見つけるのが難しくなってしまったんだよ 構成が複雑になりすぎて、新しく入ってきた人がシステムを 理解するまで時間がかかる。それって属人性と対して変わらないから。 低い知識で十分だが、やってることはわかっても、それがなんのために必要なのかわからないし 書いてないことが多すぎて謎に包まれてる。 これが ちゃんと書いてあるしやってることはわかるはずだが、そのためには高い知識が必要で 高い知識がないければ、意図が読み取れず、結局何をやってるのかわからない。 コレに変わっただけ。 >>126 いやいや、開発「機」を作るんだろ?先ずお客さんからどのようなサービスを作るのかヒアリングして 要件定義してそれに相応しいOS、パッケージなんかを決めて本番機を念頭に「開発機」を作る。 当然VM。その後に、実際の開発を行い、 開発機の手順なりスクリプトなりをインフラの人に渡して本番機を作ってもらう。 だから開発機の構築は本番機の構築の事前準備になる。これをDockerで作っちゃったら手順も 違うし環境も違うわで、そのノウハウが全く本番機に生かせなくなる。 >>125 >色々考慮しないといけなくなる。ディストロアップデートしたら、そのパッケージで動くか検証したり >パッケージの新しいバージョンを使う時、それが今のディストロでちゃんと動くのか検証しなくちゃいけない。 これは別にDocker使うからやらなくて良いって話にはならないだろ? >>127 >失敗すると次から次へとマシンが落ちていって制御不能になって >最悪データの損失が発生する。 こんなのVMに対するデメリットでしか無いじゃん。 VM使って在るゲストOSが落ちたから別のゲストOSも使えなくなってEXSi全体が落ちる (或いはAmazonECS全体が落ちるとか)訊いたことないわ。 >>128 VM vs Dockerとなってる時点でやばい VMとDockerは組み合わせて使うもの。 Dockerコンテナを何個起動したって、マシン台数が 増えることを意味しないからパフォーマンスはあがらないんだよ。 パフォーマンスをあげるには、一台のスペックをあげるか台数を増やすしか無い。 一台のスペックあげるのは当たり前ですぐに限界が来るので 結局台数を増やすことでシステム全体のパフォーマンスをあげるわけだが そのためには物理マシン数を増やすってのはクラウドで簡単に台数を増減できる時代の今 大変なだけなので却下するとして、じゃあなにか=仮想マシン(VM)でしょ? 結局仮想マシンは使うってことは大前提なはずなんだが? Dockerを使う理由は仮想マシンと別にあって、 パフォーマンスを上げる=仮想マシンを増やす 増やした仮想マシンに配布しやすくする=Docker という結論になるはずなんだが? >>130 > いやいや、開発「機」を作るんだろ? 開発「機」を作る事自体を否定してるんじゃなくて、 Dockerを使って開発「機」を作るってのがおかしいと言ってるの Dockerは機械はどれでも構わないってやつなんだから 機械は機械で別に設計しろ。それはDockerの役割じゃない。 >>130 あんたの意見のすべてが「ズレてる」のは Dockerの役割がわかってないからだよ。 なるほどそうか。>>130 の話には「開発ソフトウェア」が抜けてるんだわ Dockerの役割は「開発ソフトウェア」に関わる話なのに >>130 にはその話が抜けてるから、Dockerがでてこない。 (出てきてるように見えるのはDockerの間違った使い方) 連投すまんね >>130 の > その後に、実際の開発を行い、 > 開発機の手順なりスクリプトなりをインフラの人に渡して本番機を作ってもらう。 ここやね。インフラの人に渡すものはコマンド一つ程度でよくなるのがDockerだよ。 >>128 いやいや保守派がどうのと言うより費用対効果だろ? 学習コストを上回る効果が得られるなら、当然やる。 めちゃくちゃに忙しいエンジニアが己の持ち時間を削って勉強するんならそれ相当の 見返りを期待するわ。 >メモリとCPU大量につみゃいいじゃん。て言われりゃ、あぁそうだね。 そういうこと。一方でサイボウズの例みたいに1つのサービスのために 1000台のコンピュータが動いていると言うなら、考慮の余地は無いから 鳴るべく軽いコンテナベースに、と言うことにはなるだろうね。 >>129 これは単に分かりやすかった筈のOSの仮想化技術、アプリケーションの仮想化技術を 「コンテナ型」とか分かりにくく言い直しただけ。 別段高い知識でもなんでもない、ワザとか何か知らないけど分かり難くしている。 >>138 > これは単に分かりやすかった筈のOSの仮想化技術、アプリケーションの仮想化技術を > 「コンテナ型」とか分かりにくく言い直しただけ。 まだ「個」でしか見えてないw Kubernetesでは「個」で考えるのではなく「群」を作るのが前提のものだから 難しくなってるって話をしてる。 >>136 ん?「実際の開発を行い」と書いているだろ? フルスタックのエンジニアなんだから、インフラも開発も全部見るのが普通だろ? というか、君は見ないのか? >>139 すまんね。Dockerの話をしてるのかと思ったよ。 「個」をいくつか作っていって、それを組み合わせていけば そのうち「群」になりますよね?っていうのが従来の発想で、 まず「群」を作りましょう。「個」はその中に生まれていきます。 っていうのがKubernetes。 最初から「大群」になるのがわかってるならKubernetes一択なんだが 「個」をちょこちょこ作っていって「群」まで育てばいいなぁの世界だと いきなり「群」を作るのは、想定外の話なんだよ。 なんでこの段階からそんなことまで考えなければいけないの?のオンパレードになるから そういうのをやったことがある人でないとKubernetesは使いこなせない。 >>137 この話で行くなら、既にDockerが本番環境でも利用される事を前提にしないと 話が進まない、と言うか導入しようぜ、とならない。 >>123 がいつの間にかこんな事言っているけど、ちょっと前までは、>>71 みたいに あくまで開発者の環境という話だったはずだが? >>140 両方見るにしても分けて考えないといけない。 両方見てるだけで、一緒にしてるわけじゃない。 分離して考えて、インフラはインフラのことだけ考えればいい (利用者などの要件に応じて、どんな規模のインフラを作るか?という話) そのインフラに、アプリを配布するときに渡す「アプリ開発者が渡す手順書」 (どんなパッケージをインストールするのか?) っていうの少なくて済みますよっていうのがDocker インフラ担当はインフラの性能のことだけ考えればいいし、 (アプリ開発者が渡した)アプリを動かす手順書見て 四苦八苦しながらアプリ動かしてみせる!のはインフラの仕事じゃない >>136 >>126>>135 スゲー不思議なんだけど、こういうレスが出る奴ってのは 自分達が開発したソフトウェアが本番環境で動作する事を 全く考慮せずに開発してるって事? そのほうがズレてると思うが? てか、そんなやり方で環境の差異とかで困った事は無いの? >>143 だからDockerを本番環境で使うんだよw お前は今どちらの立場で考えてる? インフラ担当の立場だろう? お前が気にするのは、インフラの性能と Dockerコンテナが動くための環境を用意することだけだ 作ったインフラで開発したアプリを動かす、あれやこれやの パッケージインストール作業の仕事はしなくていい (↑従来はインフラの仕事だった所) なぜなら開発アプリをDockerイメージにしておけばコマンド一つとか 設定ファイルにイメージのアドレスを書き込めば終わるから >>145 > 自分達が開発したソフトウェアが本番環境で動作する事を > 全く考慮せずに開発してるって事? > てか、そんなやり方で環境の差異とかで困った事は無いの? 困ったことはあるよ? 以前は環境の差異で手元の開発機と 本番環境で微妙にパッケージのバージョンが違ったりして 動かなかったり、動かすために本番環境に手を入れるのが大変だった。 Dockerを導入すると、そういう困ったことが無くなるって話 そこを理解すべきところなのに、Dockerの役割勘違いしてるから それが解決されるってことがわかってないんだろ? Dockerを導入した場合、自分達が開発したソフトウェアから見ると 本場環境の違いっていうのは、単にインフラのスペック・能力、インフラの構成が違うだけにしか見えない。 (インフラの構成が違うっていうのは、一台にアプリとデータベースサーバーが 同居してるかというレベルの話で、アプリは普通に最初から分離できるように作るので) ちなみにKubernetesはインフラの構成の一つなのでインフラの話で Dockerはアプリの配布方法の話なのでアプリ開発の話 KubernetesとDockerは組み合わせて出てきてくるから 同じ層の話だと勘違いする人が多いけど、別だから。 >>146 いやいや、何でそうなるのさ?インフラ担当な訳ないだろ? 俺の書込みを見て俺がインフラ担当だと思うのなら、 本当に開発の事しかわからない、俺にとっての不思議ちゃんだわ。 マジでインフラを全く考慮せずに開発するのね。 >>149 逆に聞くがお前はインフラの何を考慮してるんだ? Docker導入したら、インフラは「性能が違うマシン」程度しか 考慮しなくて良くなるんだが、 お前は何で困ってるんだ? >>150 え?困ってるなんて一度も書いてないが? >>151 困ってないなら、インフラのことを考慮することないじゃん。 エンドポイント(例えばデータベースの接続先)のアドレスはどこか? 程度しか考慮しなくていいだろ。その先がどういう構成になってるか アプリから知る必要はない。 念の為いっておくが、仕事全体としてインフラのことを考慮してないんじゃなくて、 アプリ開発者の帽子をかぶってるときには、インフラのことを考えなくていいって意味だぞ インフラ技術者の帽子をかぶってるときは、逆にアプリのことは考えずにインフラのことを考える 一人で担当してるからって、ごっちゃにして考えるなよw >>147 >Dockerを導入すると、そういう困ったことが無くなるって話 >そこを理解すべきところなのに、Dockerの役割勘違いしてるから >それが解決されるってことがわかってないんだろ? >本場環境の違いっていうのは、単にインフラのスペック・能力、インフラの構成が違うだけにしか見えない。 じゃあやっぱり、Dockerで開発「機」を作ってるじゃん。 >>133 >>>128 >VM vs Dockerとなってる時点でやばい >VMとDockerは組み合わせて使うもの。 ちょっとまてw Dockerを複数動かすより、VMを複数立てていったほうが良いだろ? ってのが、最初の問いかけじゃなかったっけか? それをどう読めば開発「機」の話になるんだ? わけがわからん。 > てか、そんなやり方で環境の差異とかで困った事は無いの? ↑ってお前が聞いたんだから、 お前は困ったことがあるんだろ? って思ったら困ったこと無いって言うしw >>152 いやいや、俺が困ってるとか、俺が考慮するとかじゃなくて、 君達何を考えてるのかね?と言う話だったんだが。 >>156 わけわかんねー。 本場環境の違いっていうのは、単にインフラのスペック・能力、インフラの構成が違うだけにしか見えない。 といっているのは開発したときの環境と、本番環境の差がなくなったからだといっているんだろ? で、その開発環境は自分で作ったんだろ?要件にあわせて。 >>155 > Dockerを複数動かすより、VMを複数立てていったほうが良いだろ? だから、VMは(システム全体としての)性能を上げるために 複数立てるんだよ。 Dockerは、その性能の話と全く関係ない。 仮想マシンだろうが物理マシンだろうが関係なく、 (Dockerサーバーが動いてる)そのマシンに簡単に配布できますよ。 従来インフラ担当者に渡していた 「アプリを正しく動かすための手順書」はいらなくなりますよ。 インフラ担当者が四苦八苦してトップページ表示までたどり着く作業は いらなくなりますよ。っていうのがDockerを使う理由だから >>158 > といっているのは開発したときの環境と、本番環境の差がなくなったからだといっているんだろ? 「差がなくなった」とは何の話をしてる? どうも、全く同じマシンを手に入れた。って言ってるように見えるんだがw 開発環境と本番環境が違っていても(Dockerサーバーさえ動いていれば) その環境の差を気にしなくていいと言ってる。 差がなくなったのではない。差を気にしなくてもいい。 (Dockerサーバーの上だけを見れば、差がなくなったとも言えるのは正しいが) > で、その開発環境は自分で作ったんだろ?要件にあわせて。 開発環境なんて手元のMacとかだろw まあ、別にどこでもいいがね。Dockerサーバーさえ動いていれば Dockerイメージにした自分が作ったアプリは問題なく動くので。 なんかもう、根本からズレてる気がするんだよなw なんか本番環境と同等の開発環境を作って そのマシンにリモートでログインしてアプリを開発する みたいな発想をしてるように見える まあ、昔はそれをやっていたので人のこといえんけどな 本番環境サーバーを模した開発環境サーバーにSSHログインして開発してた 違うねんw 今の開発はそうじゃないねんw どこでもやれるねん。そんな専用環境なんか作らなくて良くなったんだよ。 Dockerのおかげでね。手元の開発環境がMacであろうとWindowsであろうと 本番環境とどれだけ性能などの差があろうと (開発環境、もしくは本番環境)のDockerサーバーの上では 性能の違いがあるだけで同じように見えるんだよ。 まだサーバーを家畜ではなく ペットのように可愛がってるおじさん? >>161 >なんかもう、根本からズレてる気がするんだよなw >なんか本番環境と同等の開発環境を作って >そのマシンにリモートでログインしてアプリを開発する >みたいな発想をしてるように見える 発想をしている、では無い。 これに対する利点を述べてくれ、とずっと要っているのだが? それに対する利点に合点がいかなければ、その環境を例に挙げて 反論を述べている。・・・すると、おかしな勘違いする奴がいる。 >>161 俺、Docker便利だよ派だけど、 あなたの言い分だと、ID:KPJdW8/sが言う、 VMでいいじゃん。に対する反論になってなくない? >違うねんw 今の開発はそうじゃないねんw >どこでもやれるねん。そんな専用環境なんか作らなくて良くなったんだよ。 >VMホスト環境のおかげでね。手元の開発環境がMacであろうとWindowsであろうと >本番環境とどれだけ性能などの差があろうと > >(開発環境、もしくは本番環境)のVMホスト環境の上では >性能の違いがあるだけで同じように見えるんだよ。 仮想マシン配布より プライベートレジストリでDockerイメージ配布の方が楽だし 速いし 同じCPUアーキテクチャならどのLinuxディストリでも動く Nested VirtualizationのないAWSにもそのまま持ち込める そもそも仮想マシンには 予めPHPとかインストールされたベースイメージがない そこから自分でやるのはちょっとめんどくさい >>164 どの言い分に対するレスなのか知らんけど、 俺は最初から、仮想マシン(VM)とDocker(コンテナ)は 組み合わせて使うと言ってる。 Dockerがあれば仮想マシンはいらないとか言ってない。 どういう反論をすれば良いんだ? 使い方が違うとしか言いようがない。 VM作るだけだとアプリの配布が面倒だろって言えばいいのか? VMだけじゃ"足りない"だろ。としか言えんぞ? >>163 > これに対する利点を述べてくれ、とずっと要っているのだが? 利点? お前、客から要件聞いて、そこから開発環境 (専用の開発サーバー)作るお仕事をしてますって言ってるじゃん? 俺からすればなんでそんな事してるんだ?って言う話だから 利点と言うなら、要件聞かないと開発環境が作れませんなんてことにはなりません。 開発環境を作るコストが減りますといえばいいのかな? 開発環境だけの話をしてるのが謎だけど Dockerを導入すれば(開発環境に限らず)どんな環境にでも容易に変更できます。 "本番環境"を要件(負荷等)に応じて、自社サーバーにするのも クラウドにするのも、環境を用意に変更できます。 (という話の環境の中に開発環境も含まれてる) >>167 >>130 実際の開発を行い >>137 実際の開発を行い >>140 実際の開発を行い 何度も書ているんだが、日本語読める? てか、お前、馬鹿なんだから俺の質問にレスすするな。 おかしなレッテルの上で話を進めるから訳がわからない。 他の人はまあ、読んでると思うけど、お前は全部的を外している。 >>142 何か、話が飛躍しすぎている気がする。流行りだし>>128 が言うようにVMは やがて鯖側で化石になるだろうから、Dockerで運用してみようかな? と思わない事も無い。でもこんなにデカイのは要らないんだよなぁ・・・ 2台のWeb or Socketサーバーを平日の繁忙時間だけ3台にしてくれるような ツールは無いですかね? >>169 DockerとKubernetesの話は別だ。分けて考えてくれ。 Dockerは配布が楽になる。どこでも動かせるようになる。 そのどこでもの中の一つにKubernetesで構成した大規模なインフラも含まれるってだけ 開発したアプリがどこでも動かせるから、手元のMacでも 本番環境の物理マシンでも仮想マシンでもKubernetesで作った クラスタ環境でも簡単に動かせるってだけ。 別にKubernetes使うのは必須じゃない。Kubernetes使ったからって 簡単になるもんでもない。逆に難しい。Kubernetesが生きるのは大規模な本番環境であって 2台のWeb or Socketサーバーを平日の繁忙時間だけ3台にしてくれるような ツールなら、クラウドの仮想マシンオートスケールの設定でもして その上で「Dockerコンテナを」動かせばいい。 というふうに組み合わせて使うんだよ・・・ Dockerは配布が簡単になるだけのものなんだから >>169 > 流行りだし>>128 が言うようにVMは > やがて鯖側で化石になるだろうから 上でも言ってるけどならんよ。 (Docker)コンテナはいくら数を増やしたって システムの性能は上がらないんだから。 システムの性能を上げるために必要なのは (マシンスペック強化は別として)VMの台数を増やすこと まあクラウド側の提供として、コンテナを動かすための環境を提供して その環境ごとに課金するタイプなら見た目上、VMはなくなったように見えるが。 でもVM単位の課金か、コンテナ環境単位の課金かの違いになっただけやねw 亀です。 軽くレスおってるだけで提言なんだけど、配布とか楽なのはわかる。 compose upすればいいだけ。すごく楽。 だけど保守には向かないんだよ。docker自体にログがドカドカ出す機能はないし、中のアプリケーションから何らかのものを出さないといけない。 dockerのネットワークもEsxiとかに比べたら柔軟に構築できないし、障害対応に当たるメンツの教育コストも考えなきゃいけない。 立ち上げだけ上手くいくテスト環境にはいいけど本番環境はやっぱり難しいと思う >>173 >docker自体にログがドカドカ出す機能はないし ログ自体はdocker-compose logs -f で見れるじゃん。 >dockerのネットワークもEsxiとかに比べたら柔軟に構築できないし これやね。 Dockerは何故ルーター噛ます事がデフォルトになっているのか? DD-WRTとかCiscoのXRVとかをそれこそ「コンテナとして」提供するならまだしも、 (ESXiはそれが出来る)勝手にルーター込みで作るとかマジで止めて欲しいわ。 アクセス自体もOSによっては「名前の解決を行っています」に1秒くらいかかって遅い気がする。 >立ち上げだけ上手くいくテスト環境にはいいけど本番環境はやっぱり難しいと思う これだと、結局Dockerは開発者のおもちゃ程度じゃん。 >>173 >docker自体にログがドカドカ出す機能はないし いつものなにか勘違いしてる系だよw 「あなたが作った開発アプリのログ出力機能」を Dockerのせいにするのはおかしいと気づかなきゃいけない。 開発アプリのログを出す責任は、アプリ開発者にあるでしょ? 標準出力と、標準出力エラー出力(あとファイル)を出せるんだから ドカドカだすのはアプリ開発者の仕事だよ > 立ち上げだけ上手くいくテスト環境にはいいけど本番環境はやっぱり難しいと思う そういう基本を理解してない人が、間違った話をした上で、難しいと言っても説得力がない >>174 > Dockerは何故ルーター噛ます事がデフォルトになっているのか? ルータを噛まさないで可搬性が作れるなら、提案してみれば? ともかく、どんなサーバーでも動かせるということは、 そのサーバーで他のコンテナが動いてる可能性もある。 だからアプリがポート番号決め打ちだとかぶって困るよね。 つまりDocker自身がポート番号の変更機能を持ってなきゃいけないんだよ。 アプリ側で変更可能にしておくのが常識だけど、それだとアプリごとにやり方が異なる そういうのをコンテナとしてまとめて、Dockerが可搬性をもたせると主張してるのだから Dockerの仕事になる。そこでルーティング機能がでてくる。 >>175 >ルータを噛まさないで可搬性が作れるなら、提案してみれば? ESXiのゲストOSは(AmazonのEC2も)ルータなんか噛まさないだろ。 >>176 なんでアプリの可搬性と関係ない ゲストOSの話なんか出てくるの? どこでも(俺の手元のMacでも)そのゲストOSとやらが動くとでも言うのか? それにゲストOSだけ動いてもしょうがないんだけどなw アプリがなければただのOS >>178 お前のレスは兎に角、的外れ。 それしか感想は無い。 俺以外にもそう思っている奴はいる筈 という書き込みを見た人がどう思うか? 反論できな人という烙印だよ 一向に構わんね。 妄想して変なレッテルを前提に、判っても居ない癖に 禄でもない話する奴に教えてあげる必要は無い。 俺さえ分かっていればそれで良い。 >>120 ライブラリーやヘッダの依存関係が衝突するツールチェーンの環境作ってビルドするのにいいよ(´・ω・`) 例えば、MinGW-w64クロスツールチェーンとMinGW向けのビルドをする、llvmクロスツールチェーン(´・ω・`) 本番環境でも開発環境でも 同じDockerイメージを使えるのは便利だね >>175 アプリケーションじゃなくてシステム運用保守の点でdocker自体の挙動の話。 >>174 すまん。logs -fは忘れていた。。。 もしdockerで管理するんだったらSNMPはホスト側で見とくんか? あとグラフィカルな管理をお願いされたらportainerとかは限界あるけどみんなどう考えているんだ? >>186 Dockerで作ったものはアプリだってわかってるか? お前が言ってるのは、exeを実行した時のSNMPをどうすればいいんだとか いうわけがわからん話をしてるんだが お前が作ったアプリがあるだろ?そこに単にDLLをくっつけただけ。 アプリが動いているかを確かめたいなら、 そのアプリに対してヘルスチェックでもすればいいだろ Ubuntu18.04でAndroid版Mozcのapk作ろうと思ってるんだけど、 なんでDockerが必要なの? C++だけで出来ないの? Build Instructions How to build Mozc in Docker: Android, NaCl, and Linux desktop builds. How to build Mozc in OS X: OS X build. How to build Mozc in Windows: Windows build. >>188 Dockerの中にまとまってる「構築手順」を お前がそのまま実行すればできるよw 構築が簡単にできるように Dockerでビルド環境を整えてるんだろ そういうときに使う道具なんだから つくづくDockerはアプリ開発者のための道具だってわかるよなw 仮想マシンの代替だと思ってると、こういう使い方が思いつかない。 なんか知らんが、いっぱいインストールして 環境ぐちゃぐちゃにならないように、Docker使ってるの? まあ、Dockerインストしてやったほうが楽なのかな? Docker自体は、デーモン常駐させるのにあんまし向いてないような気がする… ちょっと質問なのですが、 Dockerの中でやったほうがいいというのはわかったのですが、 mozc.pyというのはどこにあるのですか? ファイルが見当たりません https://github.com/google/mozc/blob/master/docs/build_mozc_in_docker.md ありました、すみません。 mozc-master/srcにありました。 Docker使わずにPythonコマンドうったら $ python build_mozc.py gyp --target_platform=Android INFO: Generating version definition file... INFO: Version string is 2.23.2815.103 CRITICAL: ========== CRITICAL: GYP does not exist at /home/user_name/mozc-master/src/third_party/gyp/gyp_main.py. Please run "git submodule update --init" to check out GYP. If you want to use system-installed GYP, use --gypdir option to specify its location. e.g. "python build_mozc.py gyp --gypdir=/usr/bin" CRITICAL: ========== となりました。 どうすればいいですか? どっかーとかんけいないので どっかーにいってください >>187 相変わらずズレた事言ってんなコイツは・・・。 >>197 じゃあお前が反論しろ 何も言い返せないのにグチグチレスだけしなくていい >>198 ズレている、が反論以外の何者でもない。 >お前が作ったアプリがあるだろ?そこに単にDLLをくっつけただけ。 >アプリが動いているかを確かめたいなら、 >そのアプリに対してヘルスチェックでもすればいいだろ 何を言ってるんだお前は・・・。 >>195 そういうふうにならないためにdockerがあるんですがね Docker Hub から、好きなコンテナを探せば良いだけだろ そしたら、その中に環境一式が入っている 好きなコンテナ探して使うとか、そういう使い方じゃないよ。 Docker Hubのコンテナの正しい使い方は 1. Docker公式が用意しているものを使う 2. ディストリ公式が用意してるものを使う 3. 何らかのアプリであれば、そのアプリの公式が用意してるものを使う それ以外は、参考イメージに過ぎない。 そんな環境が入ってるかもしれないとか思って探すものじゃないw $ sudo docker images REPOSITORY TAG IMAGE ID CREATED SIZE <none> <none> aaaaaaaaa 10 minutes ago 5GB となってしまってるのだが、 $ sudo docker run -it --name nonedocker none /bin/bash だと起動しない。 ImageID指定して起動する方法ないの? 出来ました なぜnoneになってしまってたのだろう・・・ あと、ググっても出てこないのだが、 docker内でsudo apt install unzipやろうとしても パスワードが分からなくて出来ません。 デフォルトパスワードってなんですか? パス設定してないのだが ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる