探検


Docker

レス数が900を超えています。1000を超えると表示できなくなるよ。
1login:Penguin
垢版 |
2013/07/27(土) NY:AN:NY.ANID:5oaw2wHS
LXCを使った軽量仮想環境。
これからの動向が気になるところ。
情報共有しましょう。

http://www.docker.io/
2016/11/27(日) 20:27:02.91ID:J5LCLR1R
>>799
オイラはローカルディレクトリをコンテナのホームにマウントして一通りやってからbashのHistoryから必要なものを抜いて作るな
会社の串が特殊なので一度通してからじゃないと安心できない
2016/11/27(日) 21:58:14.91ID:OuKuZbWl
>>796 だけどレスさんくす
わりと人それぞれなんだな
参考にさせてもらうわ
2016/11/28(月) 02:18:47.64ID:JwTYv/CP
>>800
詳しくありがとう。nginxでのリバースプロキシはVMで作ったことがあるから先ずそっちを検討かな。挙げてくれたコンテナも調べてみるよ。
2016/12/04(日) 08:27:18.28ID:Qsgqn7SH
盆栽作りってすごくしっくりくるな
わろたwww
2016/12/06(火) 09:24:18.26ID:MqeBJDaI
>>796 >>802だけど複雑だったから結局>>796の方法でやってる
>>801の方法も良さげだなぁ
インストール時間が作業時間のボトルネックだね
2016/12/15(木) 22:46:17.15ID:nif4fX/q
会社でDockerのおすすめの本を聞かれたんだが、
なんか、Dockerって教科書的に学ぶより自分なりの使い方を編み出すほうがいいと思うんだが…どう答えりゃいいんだ
2016/12/15(木) 23:11:19.12ID:8LH491Fv
>>806
その人もどこから始めていいかわからないんじゃないの?
読んだ本でいいのがあれば自分の感想も含めて教えてやればいいし、読んでないならそう答えれば
2016/12/15(木) 23:51:27.61ID:M6obBpSq
> なんか、Dockerって教科書的に学ぶより自分なりの使い方を編み出すほうがいいと思うんだが…どう答えりゃいいんだ
バカか?

なんのために作られたのかを理解しなければ、
変な使い方をして使いにくいと愚痴る馬鹿ができあがるだけだろ
2016/12/17(土) 17:13:38.71ID:CiMNWzhF
初心者ですまんが、dockerに固めたライブラリ類のアップデートってどう管理するの?
セキュリティ警告出てるバージョンが含まれてるかどうかscanする方法はある?
2016/12/17(土) 17:30:54.23ID:2gvSrkTc
>>809
Docker Hub を使えるなら Docker Security Scanning
https://docs.docker.com/docker-cloud/builds/image-scan/
http://www.publickey1.jp/blog/16/docker_security_scanning.html

手元でチェックしたいなら vuls
https://github.com/future-architect/vuls/blob/master/README.ja.md
vuls やってみた系記事、作者が日本人なのでこれ以外にもいっぱい記事がある。
http://cross-black777.hatenablog.com/entry/2016/05/09/090000

両方ちゃんと使ったことはないので、pip や bundle、npm などでインストールされた
言語のライブラリのチェックをしてくれるかは知らない。

言語のライブラリ周りは VersionEye あたりが使えるのかな
https://www.versioneye.com/
https://www.infoq.com/jp/news/2016/09/versioneye

ぜひ試してレビューしてほしい
2016/12/17(土) 19:01:07.33ID:CiMNWzhF
>>810
ありがとう
vuls試してみる
2016/12/17(土) 19:38:35.98ID:Nk6qV+Yf
>>806
プログラマならDocker教科書
インフラ屋なら知らん オーライリー本でも買っておけば?
2016/12/17(土) 20:58:31.85ID:VVZxJWVc
Dockerってなにがいいの?
2016/12/17(土) 21:28:18.10ID:U4tv31+j
現実として手間やリスクをペイするかはともかく、少なくとも転職活動のときのネタにはなる
2016/12/17(土) 22:50:13.81ID:73qcISp7
>>813
VPCに比べていろいろ面倒くさくない
2016/12/17(土) 23:30:33.31ID:O8pINgwA
インフラを保守的に運用しつつ、スキルのあるアプリエンジニアに最大限の自由を与えることができる
特にオンプレだと顕著
もともとバリバリのクラウド開発でサーバーなんか使い捨てだよという感じなら起動が早いくらいしかメリットはない
2016/12/17(土) 23:43:51.54ID:dj1Kku51
アプリのデプロイの話をしてないやつは
エセインフラエンジニアだから
話半分に聞いていればいい
2016/12/18(日) 00:00:40.07ID:4d92SKJj
>>816
オンプレはほぼ同意見。
あとは、開発者の手元に似たような開発環境を用意しやすいぐらいかな。

クラウドに関しては、GKE や ECS がサービスとして存在していることを考えると
ある程度の柔軟性をもったパッケージングと配布(デプロイ)が準備され、
それが逆に一定のルールとなって縛っていることがメリットだと思う。
そのおかげでどのようにスケールするかなどがある程度決めれるから。

結局、オンプレもクラウドも一番大きいのはこのルールなのかなと思ってる。

ちなみにすごくどうでもいいことだが、docker が出た当初からインフラ屋の俺はこれを
アプリエンジニアとのプロトコルと呼んでいる。
2016/12/19(月) 00:20:03.77ID:YQ49ml41
macvlanでapacheを複数ホストする方法を教えてくれ。
dockerホストのVMにmacvlanでapacheコンテナを複数作成。
それぞれmacvlanで192.168.0.1, 192.168.1.2を割当。
dockerホストと別のVM(192.168.0.254)から192.168.0.1, 192.168.0.2へのpingが通らない。
192.168.0.1と192.168.0.2の間ではpingが通る。
誰か助けてー

■参考(公式ドキュメント)
https://docs.docker.com/engine/userguide/networking/get-started-macvlan/
2016/12/19(月) 01:31:48.12ID:kCNGuOHH
>>819
docker host が VM 上だと macvlan が通らないことがあるのでそこのチェック
(コンテナの mac が vm とは異なるものなので、virualbox だと自動的にフィルターされる。
そのため、promiscuous mode にしないといけなかったと思う。)

単純なデバッグとしては外部からの ping がホストまで届いているか tcpdump してみれば?
macvlan モードはオンプレなら何も気にしなくていいけどVMだとそっち側で色々されちゃうので
一筋縄ではいかないのがちょっとつらい。
あとは、ホストへの通信が簡単にはできないのも辛い。
2016/12/21(水) 00:09:21.59ID:mJ9qbyhA
>>820
コメントありがとう。
ググってるだけでまだ触れてないけど、難易度高そうですな…
822login:Penguin
垢版 |
2016/12/23(金) 20:15:21.64ID:lhOz+zFi
社内用にgitlabとか簡単に構築したくて入れたけど便利だな
nginx-proxyとかgitlab-runnerにdocker.sock渡してるの怖いけど
2016/12/23(金) 22:20:32.83ID:ZE3v8MAp
そうそう、そういうのを無効化するのが醍醐味
わかって使えばこの上もないツール
2016/12/24(土) 12:44:21.60ID:9oRagV//
自作のアプリならいいけどそういう他人が
作ったものっていうのはデータの永続化が困る。

どこを保存すればいいのか、調べりゃある程度わかるけど
本当にそれだけでいいのか判断できない。

データディレクトリってちゃんと別れていればいいけど
設定ファイルは別の場所だったり、
「管理画面から入れるプラグイン」は特定のディレクトリに入ったりで
コンテナ消したときにちゃんと復帰できるのか自信が持てない。
2016/12/24(土) 17:43:26.73ID:+JDkOtyq
そういうものは、docker commit で頑張れなくもないけど、
コンテナが immutable であることを前提に設計されている docker を使って
運用するのは向かないものなので VM や lxc なんかで運用するしたほうがよい。

気になって追いかけるときに docker diff なりを使うのもありだけど
結局コード読まないと最終的に判断できないんだから
そういうものは docker 使うのを諦めたほうがよい。
2016/12/25(日) 20:05:48.75ID:fIuw+V57
そもそも出来合いのものをDockerで運用する意味はないわ
既存のDockerのクラスタがあるからついでに乗せるとか、
単発のジョブならありだけど
2016/12/26(月) 09:49:54.58ID:PLBWxsz1
Windows10でドライブマウントうまくいく?
日本語入ってると見れない
2017/01/24(火) 23:02:51.78ID:xWqME6qR
dockerスゲーわ
2017/01/26(木) 15:32:39.73ID:vKPQziBb
どの部分に凄みを感じたん?
2017/01/26(木) 21:34:58.10ID:WAMGEIhr
鯖がコンテナ積んでるロゴ
2017/01/26(木) 22:05:33.94ID:t28E8yhv
Dockerは確かにロゴやサイトの美的センスはあるよな
LinuxオタのくせにGNU的な気持ち悪さを微塵も感じさせない
2017/01/26(木) 22:36:28.12ID:dZzLF94s
>>831
GNU的な気持ち悪さってなんだよ?w
2017/01/26(木) 23:00:06.50ID:j/NqQT0Y
https://cdn.worldvectorlogo.com/logos/gnu.svg
2017/01/27(金) 00:20:41.41ID:L2sjG0DQ
鯖だったのかアレは
個人的にはイカも悪くないと思う
2017/01/27(金) 00:45:40.49ID:YR2bExgB
ズートピアの警察署長
2017/01/27(金) 01:33:18.96ID:4xG+mJbf
アップデートされました。
2017/01/27(金) 12:22:16.18ID:b5azZFPe
>>834
海の仲間たちのデザインも悪くない。
センスいいと思う。
2017/01/28(土) 00:13:07.00ID:mEA9d3XN
このスレって技術者だけで、研究生なんかはいないのかな?
2017/01/28(土) 00:15:37.32ID:+vbaE7xJ
情報系の学生ならいるけど特に研究に使ってるわけじゃないな
2017/01/28(土) 01:40:52.22ID:b1WmBmh9
今月のソフトウェアデザインを読んでdockerを始めてみたけど自分にどんなメリットがあるのか見出だせない...ラズパイ+dockerで機械学習とかやってみようかなぁ
841login:Penguin
垢版 |
2017/01/28(土) 02:23:59.69ID:dNcQjqOy
今Docker実践入門という本で勉強してるけどとても楽しい
今まで必死に書いていた構築手順書とかから解放されそう
2017/01/28(土) 09:12:07.00ID:92B9DGMz
インフラ系の人が構築を楽にしたいなら構成管理ツールをやった方がためになると思うけどな
Dockerはあくまでアプリのパッケージ化技術
そこを勘違いしてDockerに入ってきたインフラ系の人が結局 ? となったまま去っていくケースが多い
2017/01/28(土) 10:00:35.20ID:PcTp7kkz
DockerとImmutable Infrastructureとクラウドのせいで
構成管理ツールいらないんじゃね?って思ってるんだが
シェルスクリプトで十分でしょ
2017/01/28(土) 10:01:37.20ID:PcTp7kkz
ちなみにDockerfileはほぼシェルスクリプトと思ってる
2017/01/28(土) 11:43:01.77ID:2MvWS/IP
docker使ってるとubuntu14で一行で
git最新版(2.x)入れる方法とかクソみたいな
知識が必要になるのが辛い。

けどそれ以外は楽しいね〜
2017/01/28(土) 11:47:29.88ID:PcTp7kkz
複数行で書いていって、完成したら ; でつないで一行にするだけじゃね?
2017/01/28(土) 11:48:49.38ID:PcTp7kkz
もっともなんで最新版gitをDockerの中に
あえて入れないといけないのかがわからんけど。

Dockerの中のgitは人間が直接使うわけじゃない
最新版でなくても動けばよかろう?
2017/01/28(土) 14:38:11.58ID:xrwv+dsh
一行にするだけでも可読性が悪くなるよな。gitのsquashみたいな機能があったらいいんだけど。
2017/01/28(土) 14:57:46.09ID:PcTp7kkz
前に

BEGIN # ここから
RUN なんとか
RUN なんとか
EMD # ここまで

を1レイヤーにすれば良いんじゃね?
みたいなIssueがあった気がするがあれどうなんたんだろう。

ぶっちゃけヒアドキュメントみたいなものが使えれば
一行である必要はないはずなんだよな
2017/01/28(土) 15:12:15.84ID:2MvWS/IP
>>847
go使うのにある程度新しいgitが必要だったのよ
2017/01/28(土) 15:20:07.19ID:2MvWS/IP
ディスク容量さえ増えなければ複数行でいいんだよね?
squash diskみたいなのが欲しい。rmしてそれやると、
イメージサイズが減ってくような奴w
2017/01/28(土) 15:29:25.19ID:PcTp7kkz
なんで?としか言いようがないな。
goは普通にバイナリ提供されてるだろ
goを使うだけなのにどこでgit使うんだ?
2017/01/28(土) 15:51:31.79ID:4Jfgy7RR
goはビルドシステムがgitに依存してる
まあgoはバイナリがポータブルなのが売りなので、そもそもコンテナ内でビルドする必要はないんだが
2017/01/28(土) 17:12:56.26ID:2MvWS/IP
>>853
ほお、じゃあ外でビルドしてからgopath以下を
全部コンテナに突っ込めばよかったんかな。
イメージを小さくするにはそのほうが良いかも
2017/01/30(月) 21:09:58.96ID:rjaVNIFi
>>854
いやいや生成されたバイナリ一つで済むからワンバイナリ言ってるわけだし。
windows環境ならlinux用にバイナリ出力すればいいだけ
最近はワンバイナリですまないかもしれないけどね。
2017/01/30(月) 21:18:58.37ID:K/NqPmIh
そもそもワンバイナリならdockerも要らないけどな
2017/02/17(金) 03:42:03.04ID:Ws+OLwc1
buildさげ
2017/02/20(月) 22:58:04.93ID:GZ1cgO8N
久しぶりに来たら squash の話してるけどすでに実装されてるぞ。
ただし、Experimental。

仕組みとしては、通常のbuildをしてできたイメージを1layerにする処理がまた走る。
内部的にはイメージが2つできる感じ。
手元のディスク容量的には損だけど、squash 前の繰り返しする場合に
レイヤーが再利用されるのでそういう面で便利。

使い方は、docker daemon を experimental オプションつけて起動して、
docker build --squash -t foo .

次の 17.03 か 17.04 あたり(バージョニングルールが変わった)で experimental 外れるんじゃないかな
2017/02/20(月) 23:14:46.37ID:GZ1cgO8N
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。
2017/02/20(月) 23:45:20.11ID:3naPY4fk
なんでそこまでしてGoなんて糞言語使わなきゃいけないんだ
デプロイがシンプルであることだけが存在価値の言語なのに
2017/02/21(火) 00:43:51.96ID:zSkuuX2q
>>860
お金のにおいがするからじゃないの?
なんか出してもいない広告で100億円儲けてる業界みたいだし。
2017/02/23(木) 22:14:18.66ID:XyGL3dEI
普通に仮想マシンの中にLinuxとか色々ソフトを入れてサーバー立てるんじゃなくて
Dockerを使うと良いことあるの?
2017/02/23(木) 22:23:38.60ID:MafKuul+
>>862
バイナリファイルを一個コピーするだけで
アプリが使えたら楽だろ?

wget 取ってて/usr/local/bin あたりに入れて
chmod +x するだけで使える。


アプリを動かすまでにApacheを設定してPHPをインストールして
WordPressをインストールして動かすの大変だろ?

Docker使えば、docker run するだけで使える
2017/02/23(木) 22:34:16.05ID:NESE3n8b
今時そんなのはPaaSでワンクリックだけどね
Dockerはむしろ、アプリ個別に好き勝手に環境をガンガン作り込んでも
インフラや運用体制が破綻しないのがメリット
2017/02/23(木) 22:50:52.57ID:VBR1y7Yw
>>858
>>859
サンクス。squash期待だわ

まさにcgoもあってnvidia-dockerでgo使ってる。
何故goとか言われると辛いが便利なので使ってるわけで、
使うとなるとdockerに閉じ込めれたほうが便利なんだし、
いいじゃん俺が何使おうが、みたいな感じだよね
2017/02/23(木) 22:51:47.94ID:VBR1y7Yw
>>862
VMより軽い。そんだけ。
VMで使えてるならVMでいいんじやん?
2017/02/23(木) 23:00:33.50ID:XyGL3dEI
VM1個しか要らないならメリットなし?

ただの仮想マシンは移したりするときに
イメージ全部運ぶの大変そうなのは分かる
2017/02/23(木) 23:12:53.17ID:VBR1y7Yw
>>867
説明が面倒なんで説明してないだけ。
俺だったらdocker使えるなら全部docker使って、
どうやっても無理なとこだけVM使うとかするけど、
君、docker使いたくないんでしょ?ならVMでいいよ。
説明がメンドイ
2017/02/23(木) 23:15:39.74ID:sJ6i5qNr
>>867
君開発の人じゃないでしょ?
2017/02/23(木) 23:17:26.49ID:NESE3n8b
>>867
それはちょっと違う
Dockerを使うなら、これまでVM1個に色々入れてたものは複数のコンテナに分けて構成することになる
構成要素のそれぞれを独立して動作する一つのパッケージとして扱えるので個別の変更が比較的容易になる
変更せずに決まった形で運用するだけなら全くメリットはない、というか
全体的に見れば環境は当然1VMに比べて極めて複雑になるのでデメリットしかない
2017/02/24(金) 01:56:55.47ID:9fOfLc8E
>>867
Docker使い()はね、Docker使うことが目的なんだ。
2017/02/24(金) 09:23:51.78ID:EGNXCUbD
>>862
環境を壊さないところかな。
OS1個でも色々な環境をつくれる。
お互い排他にできるからRootで作業しても安心。
873login:Penguin
垢版 |
2017/02/27(月) 14:56:32.12ID:vzcfvR79
質問します
Exposeではない方法でdocker の外側からコンテナにアクセスする方法がわからないので教えていただきたいです
Bridge を用いるのはわかるのですが,いまいちよくわからないので
2017/02/27(月) 19:29:36.20ID:hHCogBTa
ttp://christina04.hatenablog.com/entry/2016/07/22/193000
これでどうだろうか。
2017/02/28(火) 09:19:07.69ID:WAeZD99p
>>874
その方法、

Mac でdocker0がなくなっちゃってるのよねー
https://github.com/docker/docker/issues/22753
2017/02/28(火) 09:20:45.91ID:WAeZD99p
他にも
https://docs.docker.com/docker-for-mac/networking/

Known Limitations, Use Cases, and Workarounds
There is no docker0 bridge on macOS
I cannot ping my containers
Per-container IP addressing is not possible
Use cases and workarounds
I want to connect from a container to a service on the host
I want to connect to a container from the Mac
877login:Penguin
垢版 |
2017/02/28(火) 12:28:59.77ID:nfcyPD7E
RPi3 HypriotOS なので Mac の件は大丈夫です.ありがとうございます.
ですが,>>874 のブログだと結局外部からアクセスするには expose するしかないのでしょうか
2017/02/28(火) 21:48:02.67ID:uZrPc7Rh
そもそもアクセスって何がしたいのさ
2017/03/01(水) 00:51:49.38ID:f2lcL8jV
Win10 homeでも動くようになるってのはどうなったんだっていう
2017/03/01(水) 01:01:56.89ID:zKL6fZSr
WindowsコンテナにしてもDocker for Windows にしても Win10 Home で動くという話は聞いたことはないな
まぁ、対応するとしたら Microsoft なんだけど hyper-V を home 持ってくることは無いんじゃないかな
881login:Penguin
垢版 |
2017/03/01(水) 06:57:54.69ID:BvMgnh4a
用途は研究です
コンテナ内のアプリケーションと外部のアプリケーションで通信を行いたいのです
ホストosのiptables をいじって転送するように設定したら可能でしょうか
コンテナから外には繋がるので
2017/03/01(水) 09:47:46.22ID:M7GV8Yrx
Dockerの期待と現実〜Docker都市伝説はなぜ生まれるのか〜
https://www.slideshare.net/zembutsu/docker-expectations-and-reality
2017/03/01(水) 10:35:35.86ID:M7GV8Yrx
Docker導入のための、コンテナの利点を解説した説得資料 - Qiita
http://qiita.com/niisan-tokyo/items/88a53a1b4aa7ad60723e
2017/03/01(水) 23:47:24.74ID:rngK4GuO
>>881
研究とはDockerでいろいろ変なことをやってみる研究ですか?
それともDockerを実務で使うための研究ですか?
2017/03/02(木) 00:53:55.20ID:e/6SBv79
アタックして中身の情報を盗み出す研究じゃね?
886login:Penguin
垢版 |
2017/03/02(木) 23:37:35.81ID:V84YCqu8
>>884 docker は単にデーモンを分けて動かしてメンテナンス性を上げるためです
2017/03/03(金) 10:09:39.28ID:2Oo8tUfc
Docker v17.03がリリース。今月からバージョン番号制度が変更になり、毎月リリース体制に − Publickey
http://www.publickey1.jp/blog/17/docker_v1703.html
2017/03/03(金) 12:51:59.91ID:mhTOLFfe
>>887
毎月リリースはいいんだけど、安定板は平行して出てこないのかな。
2017/03/04(土) 09:24:50.54ID:mzibS5k4
>>882
面白かった
>>883
うんこだった
2017/04/06(木) 14:21:14.99ID:Vj6ztunA
Windowsで
VirtualBoxで試したらIOがめちゃめちゃ遅くてまともに動作しない
Hyper-Vではそんな事は無かった
2017/04/06(木) 16:04:58.83ID:/LfHUgOs
ならスレチってわかるよな?
2017/04/06(木) 18:32:29.28ID:AlJtAXrU
>>891
VMのLinuxで動かしてるからスレチではない。
2017/04/06(木) 19:09:05.00ID:JkUgNfj4
>>892
で、Dockerの話題はいつ始まるの?
2017/04/06(木) 20:25:23.17ID:qyaesyW/
dockerってすごいよね!
2017/04/06(木) 21:43:05.07ID:hUwu3FbW
docker、すっごーい!たのしー!
マジこれヽ(´ー`)ノ
2017/04/08(土) 08:06:37.75ID:v+YoOqVn
今のDockerはRHEL6/CentOS6をサポートしないと言ってるけど、実際のところはどうなの?

・サポートしないとは言っているが今のところ一通り動く
・一応動作するが一部問題がある
・動かない
2017/04/08(土) 10:51:33.68ID:iIF+k8u8
動かそうと思えば動かせる。
でも、動いたCentOS6はもはやCentOS6ではない。
2017/04/08(土) 11:09:28.71ID:v+YoOqVn
なるほど、ありがとう。
でもこれ↓意味わからん。

>でも、動いたCentOS6はもはやCentOS6ではない。
2017/04/08(土) 18:02:07.46ID:TUAeCBbe
>>898
いじりすぎ、ってことだろ。
2017/04/09(日) 16:10:00.13ID:Eybh9Usi
rhel7でもdocker動かそうとするとサブスク必要で
かつ彼等のecosystem使わないといけない風潮あるから
なんか嫌
2017/04/09(日) 18:47:16.79ID:iE8dRkRU
イアンマードックを偲んでdebian使え。
レス数が900を超えています。1000を超えると表示できなくなるよ。

ニューススポーツなんでも実況