Linuxが持つコンテナ技術を使った、仮想マシン必要ないアプリケーション仮想化技術で
アプリケーションのデプロイが用意になります
Docker(アプリ仮想化)は仮想マシンと併用して使うことで最も効果を発揮し
開発・テストで使ったDockerイメージと全く同じものを本番環境で使えます
さらにWindowsとmacOSでも同じDockerイメージが動きます。
(Linuxは仮想マシンが不要ですが、WindowsとmacOSは仮想マシン技術を併用して実現しています。)
Dockerイメージ(Dockerfile)はアプリケーション開発者が作成します
動かすのに必要なもの全てがDockerイメージに含まれるので
インフラ担当者はそれを動かすだけ、本来のインフラの作業に集中できるようになります
Dockerは主にウェブ業界でサービスのデプロイの必須技術になりました
情報共有しましょう
http://www.docker.io/
前スレ
Docker Part3
https://mao.5ch.net/test/read.cgi/linux/1552023620/
注意 同じコンテナ技術を使うが異なるアプローチで仮想マシンの
代替を目指しているのがLXC。目的が全く異なるので注意
LXC(Linux Containers)
https://mao.5ch.net/test/read.cgi/linux/1330826939/
Docker Part4
レス数が900を超えています。1000を超えると表示できなくなるよ。
2020/08/17(月) 00:19:36.93ID:PKLBL3Xf
2020/11/09(月) 20:52:16.68ID:Kmn1m/pX
Dockerを仮想マシンのよう使う人って未だに居るんだな
2020/11/09(月) 22:29:49.19ID:mIHqbD7W
べつにいいでしょ
ツールが使い方を決めるんじゃなくて人が使い方を決めるんやで
ツールが使い方を決めるんじゃなくて人が使い方を決めるんやで
2020/11/09(月) 22:41:51.92ID:mwf5KB+q
仮想マシンのように使うって具体的にはどういうことなんだろ
806login:Penguin
2020/11/09(月) 23:23:36.46ID:Zesq5BDu Docker, Kubernetes は、immutable。
状態を持たない
すべて破棄してから、作るのが基本。
サイボウズのkintone では毎日、破棄してから作っている
AWS などを知らない香具師が、コンテナ内に状態を持とうとする。
クラウド・コンテナの機能の、区別ができない香具師
Cloud Native Computing Foundation(CNCF)の卒業プロジェクト、
Kubernetes, Prometheus, Envoy, CoreDNS, containerd, Fluentd
他には、はてなのMackerel, DataDog, Elasticsearch などを、知らない香具師。
コンテナを仮想マシンのように使うなって、延々と言われているw
状態を持たない
すべて破棄してから、作るのが基本。
サイボウズのkintone では毎日、破棄してから作っている
AWS などを知らない香具師が、コンテナ内に状態を持とうとする。
クラウド・コンテナの機能の、区別ができない香具師
Cloud Native Computing Foundation(CNCF)の卒業プロジェクト、
Kubernetes, Prometheus, Envoy, CoreDNS, containerd, Fluentd
他には、はてなのMackerel, DataDog, Elasticsearch などを、知らない香具師。
コンテナを仮想マシンのように使うなって、延々と言われているw
2020/11/09(月) 23:40:05.64ID:t6dOYJYt
と無職が申しております
2020/11/10(火) 02:11:20.23ID:VE0k1L0+
ググった単語を色々並べて、頑張ってるなw
散文詩みたいで意味がさっぱり通じないw
匿名掲示板でそんなに俺できるぜ感をアピールしたいの?なんで?
その心理がサッパリ分からないw
散文詩みたいで意味がさっぱり通じないw
匿名掲示板でそんなに俺できるぜ感をアピールしたいの?なんで?
その心理がサッパリ分からないw
2020/11/10(火) 02:22:13.72ID:kmSrn2NE
と言ってみた
810736
2020/11/10(火) 14:28:17.26ID:KAsBN9EE >>739
すいませんポート開くの忘れてただけだった
$ docker run -itd -v /root:/var/www/html [イメージID] bash
を
$ docker run -itd -v /root:/var/www/html -p 8000:8000 [イメージID] bash
とやればできた
が、今度はcgi-bin内にアクセスしようとするとダウンロードになってしまう
・cgi-binとcgi-bin/sample.pyのパーミッションを755
・sample.pyの一行目に#!/usr/bin/env python
・改行コードはLF
とやっても
PermissionError: [Errno 13] Permission denied: '/var/www/html/cgi-bin/sample.py'
が出てしまう
自分のホストPCでローカル環境なら大丈夫だった
あとplay with dockerでnginxを介した場合は大丈夫だった
すいませんポート開くの忘れてただけだった
$ docker run -itd -v /root:/var/www/html [イメージID] bash
を
$ docker run -itd -v /root:/var/www/html -p 8000:8000 [イメージID] bash
とやればできた
が、今度はcgi-bin内にアクセスしようとするとダウンロードになってしまう
・cgi-binとcgi-bin/sample.pyのパーミッションを755
・sample.pyの一行目に#!/usr/bin/env python
・改行コードはLF
とやっても
PermissionError: [Errno 13] Permission denied: '/var/www/html/cgi-bin/sample.py'
が出てしまう
自分のホストPCでローカル環境なら大丈夫だった
あとplay with dockerでnginxを介した場合は大丈夫だった
811login:Penguin
2020/11/10(火) 14:53:06.27ID:zR2u0HT2 香具師ってここ5年くらいで初めて見た気がする
812login:Penguin
2020/11/10(火) 15:01:50.33ID:VE0k1L0+ >>810
pythonのhttpdって誰の権限で動いてるんだろう?
(分からないけど)/root/cgi-bin/ (?)に対する権限を持っているのだろうか?
結局コンテナに入ってプロセスの実行者とディレクトリの権限を確認しないと分からない気がする。
pythonのhttpdって誰の権限で動いてるんだろう?
(分からないけど)/root/cgi-bin/ (?)に対する権限を持っているのだろうか?
結局コンテナに入ってプロセスの実行者とディレクトリの権限を確認しないと分からない気がする。
813736
2020/11/10(火) 18:07:34.85ID:KAsBN9EE >>812
/var/www/html/cgi-bin/sample.py
のvarもwwwもhtmlもcgi-binも
全部 chmod 755したら無事
ウェブからsample.py実行できた・・
権限許可はvar/www/htmlの下のcgi-bin以下だけでいいのかと思ってた
/var/www/html/cgi-bin/sample.py
のvarもwwwもhtmlもcgi-binも
全部 chmod 755したら無事
ウェブからsample.py実行できた・・
権限許可はvar/www/htmlの下のcgi-bin以下だけでいいのかと思ってた
2020/11/10(火) 23:49:00.42ID:CFyr5V3E
>>813
で、誰が動かしているのか理解して、0755にしたの?
で、誰が動かしているのか理解して、0755にしたの?
2020/11/12(木) 00:00:25.23ID:gGQuG0Gs
Docker compose stopでコンテナ止める時って結構時間掛かるのに
OSに対してシャットダウン掛けると即時停まるんだけど
これは本来保存されるべきデータが消えてる可能性ってある?
サービスかなんかでシャットダウン時に自動で何かデータを書き出すような処理入れるべきなのかな?
OSに対してシャットダウン掛けると即時停まるんだけど
これは本来保存されるべきデータが消えてる可能性ってある?
サービスかなんかでシャットダウン時に自動で何かデータを書き出すような処理入れるべきなのかな?
2020/11/12(木) 01:55:07.35ID:cmzexViL
そりゃタイミング悪けりゃ消えるよ
当たり前じゃん
当たり前じゃん
817login:Penguin
2020/11/12(木) 02:36:03.34ID:hi40oOUg >>815
>Docker compose stopでコンテナ止める時って結構時間掛かるのに
docker stopコマンドは10秒程度で止まるように優先度を掛けてくるから。
https://www.ctl.io/developers/blog/post/gracefully-stopping-docker-containers/
When you issue a docker stop command Docker will first ask nicely for the process to stop
and if it doesn't comply within 10 seconds it will forcibly kill it.
docker-compose stop --time=1 とかすれば、結構即時に近い形で止まるように見える。
動いてるコンテナの重要度は自分で把握しているだろうから、永続データ無いのなら
time=1で良いんじゃね?とはいえmysql postgresとかあるなら危ないだろうけど。
VM上で動かしたとしても、そんなに早くは落ちないだろうし。
>Docker compose stopでコンテナ止める時って結構時間掛かるのに
docker stopコマンドは10秒程度で止まるように優先度を掛けてくるから。
https://www.ctl.io/developers/blog/post/gracefully-stopping-docker-containers/
When you issue a docker stop command Docker will first ask nicely for the process to stop
and if it doesn't comply within 10 seconds it will forcibly kill it.
docker-compose stop --time=1 とかすれば、結構即時に近い形で止まるように見える。
動いてるコンテナの重要度は自分で把握しているだろうから、永続データ無いのなら
time=1で良いんじゃね?とはいえmysql postgresとかあるなら危ないだろうけど。
VM上で動かしたとしても、そんなに早くは落ちないだろうし。
2020/11/12(木) 04:08:50.18ID:tXLSOFMO
Dockerコンテナ内のcrontab -eで、デーモンのスケジュール再起動を任せたら、
oom Killerでホストが倒れてしまった。ホストにsshログインもできない状態に陥って大変あせった。データもっていかれるかと思ったが、再起動でなんとか復帰できた。
ホストは2GB程度だが、そのコンテナ内でこのデーモンは1G程度も消費する。
デーモンの再起動のタイミングで、メモリ溢れが発生したようだ。
そこで、ホストにおいて、docker restart コンテナとするようにした。
そうすると、メモリ溢れなく、安全にコンテナごとデーモンの再起動ができたので報告しておく。
oom Killerでホストが倒れてしまった。ホストにsshログインもできない状態に陥って大変あせった。データもっていかれるかと思ったが、再起動でなんとか復帰できた。
ホストは2GB程度だが、そのコンテナ内でこのデーモンは1G程度も消費する。
デーモンの再起動のタイミングで、メモリ溢れが発生したようだ。
そこで、ホストにおいて、docker restart コンテナとするようにした。
そうすると、メモリ溢れなく、安全にコンテナごとデーモンの再起動ができたので報告しておく。
819login:Penguin
2020/11/12(木) 04:11:53.86ID:tXLSOFMO >>811
香具師/野師/野士/弥四(やし)とは。
意味や解説、類語。盛り場・縁日・祭礼などに露店を出して商売したり、
見世物などの興行をしたりする人。
また、露天商の場所割りをし、世話をする人。
的屋 (てきや) 。 - goo国語辞書
香具師/野師/野士/弥四(やし)とは。
意味や解説、類語。盛り場・縁日・祭礼などに露店を出して商売したり、
見世物などの興行をしたりする人。
また、露天商の場所割りをし、世話をする人。
的屋 (てきや) 。 - goo国語辞書
2020/11/12(木) 05:51:20.27ID:wQ2Ny6Zh
そういうことじゃないから...
アスペムーブやめてほしい
アスペムーブやめてほしい
2020/11/12(木) 06:10:39.65ID:/yqD0qKX
>>818
コンテナ内で何のプロセス動かしてんの?
コンテナ内で何のプロセス動かしてんの?
2020/11/12(木) 08:42:14.46ID:tXLSOFMO
>>821
iaxmodemを複数個
iaxmodemを複数個
2020/11/12(木) 08:44:03.06ID:tXLSOFMO
2020/11/12(木) 09:54:41.95ID:nXT2xhvU
コンテナ内でのサービス再起動時にメモリが溢れるってのもよくわからんが、そのサービスの再起動の動作が特殊なのかね
再起動のための停止時には一時的にメモリ使うとか?
コンテナごと再起動するなら内部のサービスは通常の停止(あるいは強制停止?)+起動だろうから、メモリに問題ないのはまあわかる
どっちにしろdockerというよりサービス固有の事情に見える
再起動のための停止時には一時的にメモリ使うとか?
コンテナごと再起動するなら内部のサービスは通常の停止(あるいは強制停止?)+起動だろうから、メモリに問題ないのはまあわかる
どっちにしろdockerというよりサービス固有の事情に見える
2020/11/12(木) 14:22:14.87ID:tXLSOFMO
>>824
参考になります。
iaxmodemが始動されると、プロセスが生成されます。
その後、hylafaxを始動させて、
さらに別途faxgettyによって、両者を連結させるイメージです。(3者登場します。そのうち、iaxmodemと、faxgettyはたくさん。hylafaxとは、多対1の関係になっています。)
>>823のように、iaxmodemだけでは専有容量は僅かなんですが、
faxgettyさせると、膨れ上がります。
faxgettyは、hylafaxの関係者なので、
hylafaxがガーベージコレクトするようです。
以前テストした結果は、hylafaxの再起動時には、直ちにfaxgettyプロセスは消滅しました。
しかし、今回の環境ではそういう風にならなかったようです。
前回の環境はCentOS6でネイティブ、今回はCentOS7でコンテナです。
iaxmodemや、hylafaxのバージョンも上がっています。
いずれにしても、デーモンの再起動が特殊です。
逆に考えて、ネイティブ環境でも他の要因で同じ問題を引き起こすなら、
コンテナ環境であってよかったと思います。
docker restart faxContainerをcrontabでコンテナの外側ホストでスケジュールすれば良いのですから。
コンテナ内部でそういうデーモンの消滅のスケジュールを組むと、イメージ化されていることからタイミングの変更が困難になるので、
せっかくの利便性を損なうと思いました。
docker restart faxContainer は素晴らしいです。
参考になります。
iaxmodemが始動されると、プロセスが生成されます。
その後、hylafaxを始動させて、
さらに別途faxgettyによって、両者を連結させるイメージです。(3者登場します。そのうち、iaxmodemと、faxgettyはたくさん。hylafaxとは、多対1の関係になっています。)
>>823のように、iaxmodemだけでは専有容量は僅かなんですが、
faxgettyさせると、膨れ上がります。
faxgettyは、hylafaxの関係者なので、
hylafaxがガーベージコレクトするようです。
以前テストした結果は、hylafaxの再起動時には、直ちにfaxgettyプロセスは消滅しました。
しかし、今回の環境ではそういう風にならなかったようです。
前回の環境はCentOS6でネイティブ、今回はCentOS7でコンテナです。
iaxmodemや、hylafaxのバージョンも上がっています。
いずれにしても、デーモンの再起動が特殊です。
逆に考えて、ネイティブ環境でも他の要因で同じ問題を引き起こすなら、
コンテナ環境であってよかったと思います。
docker restart faxContainerをcrontabでコンテナの外側ホストでスケジュールすれば良いのですから。
コンテナ内部でそういうデーモンの消滅のスケジュールを組むと、イメージ化されていることからタイミングの変更が困難になるので、
せっかくの利便性を損なうと思いました。
docker restart faxContainer は素晴らしいです。
2020/11/12(木) 16:08:47.50ID:nXT2xhvU
俺はどちらかといえば「Dockerコンテナは仮想マシンじゃない」方の思想に近いから
コンテナごと再起動するのは普通というか自然だけど荒れるかな
そもそも個別ソフトの事情でメモリ食いすぎるなら、ホストでOOM起こすくらいならコンテナにリソース制限するのがいいのでは
コンテナごと再起動するのは普通というか自然だけど荒れるかな
そもそも個別ソフトの事情でメモリ食いすぎるなら、ホストでOOM起こすくらいならコンテナにリソース制限するのがいいのでは
2020/11/12(木) 16:15:03.39ID:0EFH8yv9
Linux上でchrootを仮想マシンと思うやつは、どうにかしている。
2020/11/12(木) 18:00:39.93ID:hi40oOUg
>>826
荒れるっていうか・・・・
その事に対してコダワリ持ってるのって一人だよね?
殆どの参加者は、そもそもどうでもいい話題で、そいつの書き込みに
反応するのは、そいつがなぜ、VMじゃないからどうのこうのと反発する
必要があるのか分からないから。
イスラム原理主義者に向かって暴力行為やめろよ。そもそも宗教なんて
どうだって良いだろ?と言うのと変わらない。
荒れるっていうか・・・・
その事に対してコダワリ持ってるのって一人だよね?
殆どの参加者は、そもそもどうでもいい話題で、そいつの書き込みに
反応するのは、そいつがなぜ、VMじゃないからどうのこうのと反発する
必要があるのか分からないから。
イスラム原理主義者に向かって暴力行為やめろよ。そもそも宗教なんて
どうだって良いだろ?と言うのと変わらない。
829login:Penguin
2020/11/12(木) 18:24:47.49ID:tXLSOFMO 0番の親プロセスから連鎖的に、必要な環境(ディストリ標準体系)を組みた立てていくということを、「仮想マシン」とよんでいるだけですよね。
それに対して、例えば、helloworldバイナリを実行するだけなのが、非「仮想マシン」ということですよね。
前者は、systemctlによるコントロールができて楽です。
また、アプリを構成するデーモンに依存関係がる場合はとても楽です。
しかし、後者はそういう構成を組むのに別途考慮が必要になるのでお手軽さがなくなり、せっかのコンテナがとっつきにくくなってしまいます。
こういう認識を持っているのです。
それに対して、例えば、helloworldバイナリを実行するだけなのが、非「仮想マシン」ということですよね。
前者は、systemctlによるコントロールができて楽です。
また、アプリを構成するデーモンに依存関係がる場合はとても楽です。
しかし、後者はそういう構成を組むのに別途考慮が必要になるのでお手軽さがなくなり、せっかのコンテナがとっつきにくくなってしまいます。
こういう認識を持っているのです。
830login:Penguin
2020/11/12(木) 18:51:28.32ID:tXLSOFMO >>829
必要な環境(ディストリ標準体系)と言いましたが、最初にcentos7をdocker ハブから引っ張ってきているので、標準体系にはならないですよね。
最初に何が入っているのか知らないけど、
docker run --privileged -d --net=mynetwork --name centos7 centos:centos7 /sbin/init
のようにすれば、いわゆる「仮想マシン」風の操作性のコンテナができます。
あとは、yumなどでパッケージを導入すれば、
systemctlで制御ができます。
--net=mynetwork に指定するネットワークは、自分で作成が必要になります。
LAN に対して、ポート開放もいらなくなります。
ipfilterで制御するだけです。
--net=ネットワーク名 を指定しないと、インターネットへの穴を開けてしまって危険。
ネットワークの知識がいるので、
これが唯一難しい点ではないかと思います。
必要な環境(ディストリ標準体系)と言いましたが、最初にcentos7をdocker ハブから引っ張ってきているので、標準体系にはならないですよね。
最初に何が入っているのか知らないけど、
docker run --privileged -d --net=mynetwork --name centos7 centos:centos7 /sbin/init
のようにすれば、いわゆる「仮想マシン」風の操作性のコンテナができます。
あとは、yumなどでパッケージを導入すれば、
systemctlで制御ができます。
--net=mynetwork に指定するネットワークは、自分で作成が必要になります。
LAN に対して、ポート開放もいらなくなります。
ipfilterで制御するだけです。
--net=ネットワーク名 を指定しないと、インターネットへの穴を開けてしまって危険。
ネットワークの知識がいるので、
これが唯一難しい点ではないかと思います。
2020/11/12(木) 19:18:56.59ID:p5fdQuX8
個々のコンテナの中でsystemd動かしてrsyslogdでログ出してlogroteteまてやるとか無駄の極み
動かすプロセスは複数でもいいけど必要なものだけ動かすのがdocker的な考え方だよ
systemctlに頼らず起動コマンドくらい自分で調べろ
そんなにsystemd入れてinitしたいならlxcを熱烈推奨
動かすプロセスは複数でもいいけど必要なものだけ動かすのがdocker的な考え方だよ
systemctlに頼らず起動コマンドくらい自分で調べろ
そんなにsystemd入れてinitしたいならlxcを熱烈推奨
832login:Penguin
2020/11/12(木) 19:35:45.36ID:N2n6jd6N コンテナ内でsupervisordとか動かすのはアンチパターン
2020/11/12(木) 19:50:21.89ID:DTFxiNCU
gitlabはマルチプロセスを採用してるが?
834login:Penguin
2020/11/12(木) 20:03:22.37ID:N2n6jd6N2020/11/12(木) 20:08:40.88ID:DTFxiNCU
>>834
つまりマルチプロセスなら手軽に使えるコンテナが作れるわけだよね
ということはコンテナ分割と利便性はトレードオフの関係なんだよ
このことを無視してごった煮はダメだアンチパターンだとわめき散らすのは典型的な解ってない人
つまりマルチプロセスなら手軽に使えるコンテナが作れるわけだよね
ということはコンテナ分割と利便性はトレードオフの関係なんだよ
このことを無視してごった煮はダメだアンチパターンだとわめき散らすのは典型的な解ってない人
836login:Penguin
2020/11/12(木) 20:11:24.65ID:N2n6jd6N837login:Penguin
2020/11/12(木) 20:13:51.62ID:dtymEtIL docker-composeで試せるものが
docker runで試せるようになったからって
そんな楽になったとは思えない
むしろ不便になってる件
docker runで試せるようになったからって
そんな楽になったとは思えない
むしろ不便になってる件
2020/11/12(木) 20:14:05.40ID:cTCSqjp+
ほれみろ。仮想マシンのような使い方をした結果
いつものように苦しんでるではないかw
いつものように苦しんでるではないかw
2020/11/12(木) 20:26:27.70ID:DTFxiNCU
>>836
カスタムはある程度は環境変数とかでできる
高度なカスタムが必要なら勝手に非公式で頑張れ
ほとんどの人は公式ので十分だ
オーケストレーターごとにマニフェストを用意しなきゃならんのは面倒だ
オーケストレーターを選択するのも負担になる
マルチプロセスならdocker runだけでOK
これ以上にかんたんなものはない
カスタムはある程度は環境変数とかでできる
高度なカスタムが必要なら勝手に非公式で頑張れ
ほとんどの人は公式ので十分だ
オーケストレーターごとにマニフェストを用意しなきゃならんのは面倒だ
オーケストレーターを選択するのも負担になる
マルチプロセスならdocker runだけでOK
これ以上にかんたんなものはない
2020/11/12(木) 20:28:05.87ID:DTFxiNCU
2020/11/12(木) 20:28:29.96ID:DTFxiNCU
2020/11/12(木) 20:37:41.89ID:cTCSqjp+
ここで仮想マシンのような使い方をしようとして
簡単に解決できない質問が出てるのが苦しんでる証拠
簡単に解決できない質問が出てるのが苦しんでる証拠
2020/11/12(木) 20:39:06.48ID:cTCSqjp+
2020/11/12(木) 20:39:52.51ID:Pa1Yyy7i
では分割コンテナでいいから質問者が求める構成を提示してみて
できないならそれはマルチプロセスコンテナが悪いのではなく単純に難しい構成だったというだけだな
1日待ってあげるからどうぞ
できないならそれはマルチプロセスコンテナが悪いのではなく単純に難しい構成だったというだけだな
1日待ってあげるからどうぞ
2020/11/12(木) 20:41:12.65ID:LqH7vHMd
2020/11/12(木) 20:46:12.26ID:cTCSqjp+
2020/11/12(木) 20:48:37.23ID:cTCSqjp+
>>845
docker-composeもdockerhubから勝手にpullしてくれるってことも知らんのか?
誰かが作ったdocker-compose.ymlをgitとかからpullするのが増えるだけやろ
docker-composeは、docker runだとたくさん引数を指定するのが
めんどくさいってのを解決してくれるものだ
docker runするだけ(引数がたくさんで辛いよぉ)←これを見なかったことにするな
docker-composeもdockerhubから勝手にpullしてくれるってことも知らんのか?
誰かが作ったdocker-compose.ymlをgitとかからpullするのが増えるだけやろ
docker-composeは、docker runだとたくさん引数を指定するのが
めんどくさいってのを解決してくれるものだ
docker runするだけ(引数がたくさんで辛いよぉ)←これを見なかったことにするな
2020/11/12(木) 20:50:19.50ID:LqH7vHMd
>>846
仮想マシンのようなとは?
仮想マシンのようなとは?
2020/11/12(木) 20:50:39.17ID:LqH7vHMd
>>847
docker composeはファイルが必要
docker composeはファイルが必要
2020/11/12(木) 20:51:25.98ID:cTCSqjp+
>>848
質問者が言ってるだろ
> 818 名前:login:Penguin[sage] 投稿日:2020/11/12(木) 04:08:50.18 ID:tXLSOFMO [1/7]
> Dockerコンテナ内のcrontab -eで、デーモンのスケジュール再起動を任せたら、
> oom Killerでホストが倒れてしまった。ホストにsshログインもできない状態に陥って大変あせった。データもっていかれるかと思ったが、再起動でなんとか復帰できた。
↑これが仮想マシンのような使い方
↓これが本来のDockerの使い方
> そこで、ホストにおいて、docker restart コンテナとするようにした。
> そうすると、メモリ溢れなく、安全にコンテナごとデーモンの再起動ができたので報告しておく。
質問者が言ってるだろ
> 818 名前:login:Penguin[sage] 投稿日:2020/11/12(木) 04:08:50.18 ID:tXLSOFMO [1/7]
> Dockerコンテナ内のcrontab -eで、デーモンのスケジュール再起動を任せたら、
> oom Killerでホストが倒れてしまった。ホストにsshログインもできない状態に陥って大変あせった。データもっていかれるかと思ったが、再起動でなんとか復帰できた。
↑これが仮想マシンのような使い方
↓これが本来のDockerの使い方
> そこで、ホストにおいて、docker restart コンテナとするようにした。
> そうすると、メモリ溢れなく、安全にコンテナごとデーモンの再起動ができたので報告しておく。
2020/11/12(木) 20:52:43.41ID:cTCSqjp+
>>849
ファイルをコピーするのが難しいって話をしてんの?w
docker runで引数をたくさん指定するのと、その引数がファイルに全部書かれてるから
docker-composeするだけで起動できるのと、どっちが簡単ですかって話なんだが
ファイルをコピーするのが難しいって話をしてんの?w
docker runで引数をたくさん指定するのと、その引数がファイルに全部書かれてるから
docker-composeするだけで起動できるのと、どっちが簡単ですかって話なんだが
852login:Penguin
2020/11/12(木) 21:14:01.17ID:N2n6jd6N docker-composeも使えない男の人って…
2020/11/12(木) 21:25:45.69ID:cXD8oKci
Linuxでdocker使ってるんですけど
volumeマウントするとホスト上のroot権限のディレクトリができるのですが
対策ありますか?
nginxです
volumeマウントするとホスト上のroot権限のディレクトリができるのですが
対策ありますか?
nginxです
2020/11/12(木) 21:33:19.48ID:hi40oOUg
>>818
そのものズバリの「?oom-kill-disable」なんつーオプションがあるらしいね。
https://knowledge.sakura.ad.jp/5118/
--memory=1024mb
コンテナにこの辺掛けたらどうなるか、興味深いところ。
ホストが死ぬなんてことはなくなるのでは。
そのものズバリの「?oom-kill-disable」なんつーオプションがあるらしいね。
https://knowledge.sakura.ad.jp/5118/
--memory=1024mb
コンテナにこの辺掛けたらどうなるか、興味深いところ。
ホストが死ぬなんてことはなくなるのでは。
2020/11/12(木) 22:10:04.02ID:e1or7GM2
また、仮想マシン厨が出てきたw
Docker, Kubernetes は、immutable だから、状態を持ってはいけない。
サイボウズのkintone なんか毎日、破棄して作ってる
Heroku 相当のPaaS、AWS Elastic Beanstalk のRuby, Docker などの基本。
OOM killer も、k8s の基本
そもそも、k8sのetcd は、OS の/etc の事
Docker, Kubernetes は、immutable だから、状態を持ってはいけない。
サイボウズのkintone なんか毎日、破棄して作ってる
Heroku 相当のPaaS、AWS Elastic Beanstalk のRuby, Docker などの基本。
OOM killer も、k8s の基本
そもそも、k8sのetcd は、OS の/etc の事
856login:Penguin
2020/11/12(木) 22:30:36.91ID:v1fNQw7L857login:Penguin
2020/11/13(金) 00:20:34.77ID:QYcW1wHt2020/11/13(金) 00:53:23.87ID:hfd1VDyW
OOM killer を無効にしてメモリが足りなくなったら
メモリが足りなくなったプロセスが落ちるだけの話
一般的には今まさに動いてるプロセスになるだろう
メモリが足りなくなったプロセスが落ちるだけの話
一般的には今まさに動いてるプロセスになるだろう
859855
2020/11/13(金) 01:07:01.48ID:11LMJbR5 k8s のLimitRange で、各Pod のCPU, メモリの使用量を制限すると、
PodがOOM killed される
それで、Pod数が足りなくなるから、また再作成されて、また終了させられる
PodがOOM killed される
それで、Pod数が足りなくなるから、また再作成されて、また終了させられる
860855
2020/11/13(金) 01:13:15.53ID:11LMJbR5 だから、仮想マシン厨がやってる事は、
OS の機能を、コンテナ内でやろうとしているだけの話
Docker, Kubernetes、
Heroku 相当のPaaS、AWS Elastic Beanstalk などに書いてある
OS の機能を、コンテナ内でやろうとしているだけの話
Docker, Kubernetes、
Heroku 相当のPaaS、AWS Elastic Beanstalk などに書いてある
2020/11/13(金) 01:14:25.55ID:h9qpOhxr
まーた知ってる単語を並べた君かぁ...
2020/11/13(金) 01:16:40.09ID:tBgNXNfN
OOM killerに殺されて転生したらPodでした
863login:Penguin
2020/11/13(金) 08:42:49.39ID:ZDuvPuUP 全て一つのマシンに配置する事も
データベースだけ別のマシンにする事も自由自在なのがコンテナの良いところ
データベースだけ別のマシンにする事も自由自在なのがコンテナの良いところ
2020/11/13(金) 19:48:18.74ID:PqmnqAl7
K8S使うまでもないんやけどコンテナで運用したいんやがどこのサービスがええのん?
865login:Penguin
2020/11/13(金) 20:45:48.47ID:D3CVFpPL >>864
一台しか使わないならdocker-composeでもよくね?
それともマネージドサービスが使いたい?
ならコントローラーが無料のサービスを選ぶとよい
Amazon ECSは無料
Azure Kubernetes Serviceも無料らしい
Google Kubernetes EngineはZonal Clusterなら一つは無料らしい
一台しか使わないならdocker-composeでもよくね?
それともマネージドサービスが使いたい?
ならコントローラーが無料のサービスを選ぶとよい
Amazon ECSは無料
Azure Kubernetes Serviceも無料らしい
Google Kubernetes EngineはZonal Clusterなら一つは無料らしい
2020/11/13(金) 20:59:39.66ID:fCUG99+M
dockerコンテナ一つで終わるなら、dockerをデーモンで起動すればいいし
複数のコンテナが必要なら、docker-composeだろうな
複数のコンテナが必要なら、docker-composeだろうな
867855
2020/11/13(金) 23:26:16.23ID:11LMJbR5 当然、Heroku 相当のPaaS、AWS Elastic Beanstalk
Docker, Ruby もある
Docker, Ruby もある
2020/11/14(土) 09:17:26.51ID:ft2LGGjD
Fargateがベスト
K8Sなんて大げさなものは超大規模システムでしかメリットがない
アプリをお手軽にパッケージングしてお手軽にデプロイする基盤がほしい
でもDockerホストは管理したくない
大半のユーザーが求めてるモノはそれだけだ
K8Sなんて大げさなものは超大規模システムでしかメリットがない
アプリをお手軽にパッケージングしてお手軽にデプロイする基盤がほしい
でもDockerホストは管理したくない
大半のユーザーが求めてるモノはそれだけだ
2020/11/14(土) 09:41:10.29ID:UXNOc8pC
監視と通知ができる軽量なダッシュボードがほしい
870login:Penguin
2020/11/14(土) 10:37:20.76ID:wWPmvFxr 自分でオーケストレーターをインストールするのか?
k3sなら単一ノード構成でも使えるしセットアップも比較的楽
より機能の少ない物ならNomad, Docker Swarm等もあるが
使いやすいかは知らん
HerokuもDocker使えるから
自分でオーケストレーターの管理したくないならありかも
k3sなら単一ノード構成でも使えるしセットアップも比較的楽
より機能の少ない物ならNomad, Docker Swarm等もあるが
使いやすいかは知らん
HerokuもDocker使えるから
自分でオーケストレーターの管理したくないならありかも
2020/11/14(土) 12:04:55.78ID:sDLHDIUi
Herokuはvolume使えないんだろ
クソじゃん
クソじゃん
2020/11/14(土) 12:13:25.36ID:r6FG8kYB
古いプログラムソースのファイルアクセスをクラウドストレージアクセスに書き換えるのがめんどくさい
なんかファイルIOをフックしてクラウドに転送する魔法ないの?
なんかファイルIOをフックしてクラウドに転送する魔法ないの?
2020/11/14(土) 12:26:43.45ID:bVnWs0Ha
2020/11/14(土) 13:02:39.61ID:sDLHDIUi
2020/11/14(土) 13:10:46.45ID:UXNOc8pC
コンテナにrcloneでも入れればいい
個人的にはそういうものはホストに入れるけど
個人的にはそういうものはホストに入れるけど
2020/11/14(土) 16:08:08.85ID:o4LfVWyx
dockerでボリュームマウントするとroot権限でしか編集できなくなるので面倒なのですが
podmanならこの問題が解決されてますか?
podmanならこの問題が解決されてますか?
877login:Penguin
2020/11/14(土) 16:09:24.03ID:wWPmvFxr2020/11/14(土) 17:14:54.47ID:njsItriu
podmanはそんな事しないと解決できませんか?
879login:Penguin
2020/11/14(土) 17:58:55.52ID:wWPmvFxr それはまた別な問題だろ
UID、GIDをホスト側とコンテナで合わせておくか
コンテナのentrypointでボリューム内のディレクトリやファイルのUID、GIDをユーザーに設定すれば良い
そうすればroot要らない
UID、GIDをホスト側とコンテナで合わせておくか
コンテナのentrypointでボリューム内のディレクトリやファイルのUID、GIDをユーザーに設定すれば良い
そうすればroot要らない
2020/11/14(土) 18:03:00.34ID:a01QkNVP
881login:Penguin
2020/11/14(土) 18:27:23.02ID:wWPmvFxr2020/11/14(土) 18:50:25.55ID:a01QkNVP
dockerは勝手にrootで作っちゃうからやべーのなんの
2020/11/14(土) 19:28:42.25ID:P4xkE0Yn
自分でrootにしてるだけでは?
884login:Penguin
2020/11/14(土) 21:15:48.46ID:1GvF1s+0 名前付きボリュームはDockerfile内にVOLUMEで指定がなければrootになる
https://github.com/docker/compose/issues/3270#issuecomment-543603959
でもディレクトリがrootでもパーミッションがworld-writableなら
書き込みはできるんじゃね?
バインドマウントはホストのUID、GIDがそのまま使われる
https://github.com/docker/compose/issues/3270#issuecomment-543603959
でもディレクトリがrootでもパーミッションがworld-writableなら
書き込みはできるんじゃね?
バインドマウントはホストのUID、GIDがそのまま使われる
885855
2020/11/14(土) 23:30:12.14ID:5qE5ecjW AWS Fargate は、Elastic Beanstalk(PaaS)のAuto Scale までも、全自動にする奴。
企業向けの究極
確かに、first choice に、Fargateを勧めている。
昔は、Elastic Beanstalkだった
AWSの動画を見ると、
Lambda, コンテナ、仮想OS の並び順で、
コンテナを仮想OS のように勘違いする人が多いけど、
あくまでもコンテナは、Lambda・仮想OSの中間だと言ってる
Elastic Beanstalkの図を見ると、
以下のようなOSの機能は、コンテナ外にあって、Amazonが提供している
ロードバランサー・Auto Scale
SNS による通知、CloudWatch による監視・アラーム
Aurora などのデータベース
仮想マシン厨は、これらをすべてコンテナ内に実装しようとしている
企業向けの究極
確かに、first choice に、Fargateを勧めている。
昔は、Elastic Beanstalkだった
AWSの動画を見ると、
Lambda, コンテナ、仮想OS の並び順で、
コンテナを仮想OS のように勘違いする人が多いけど、
あくまでもコンテナは、Lambda・仮想OSの中間だと言ってる
Elastic Beanstalkの図を見ると、
以下のようなOSの機能は、コンテナ外にあって、Amazonが提供している
ロードバランサー・Auto Scale
SNS による通知、CloudWatch による監視・アラーム
Aurora などのデータベース
仮想マシン厨は、これらをすべてコンテナ内に実装しようとしている
2020/11/14(土) 23:39:25.75ID:KDV9YoJe
壊れたラジオくん...
887855
2020/11/15(日) 00:05:06.42ID:B8hWXGqX ユーザーを、docker group に入れるのだろう。
k8s には、Namespace, Role もある
Docker の欠点は、IP・Port(NAT・ポートマッピング)でアクセスするので、
ポート80などが1つのサービスに対応付けられてしまう
k8sでは各Pod に、IPが割り当てられるので、
NAT無しで、異なるNode(ホスト)上のPod間通信もできる
k8s には、Namespace, Role もある
Docker の欠点は、IP・Port(NAT・ポートマッピング)でアクセスするので、
ポート80などが1つのサービスに対応付けられてしまう
k8sでは各Pod に、IPが割り当てられるので、
NAT無しで、異なるNode(ホスト)上のPod間通信もできる
2020/11/15(日) 00:28:50.42ID:5a//Qgwv
ルーティングするだけでは?
2020/11/15(日) 00:34:39.32ID:5a//Qgwv
関数で実装できるならコンテナもいらねえ
クラウドなら関数、でないならコンテナ、永続層はマネージドって感じか
関数とコンテナを意識せず透過的に扱えるプラットフォームが普及したら、コンテナもオワコン
クラウドなら関数、でないならコンテナ、永続層はマネージドって感じか
関数とコンテナを意識せず透過的に扱えるプラットフォームが普及したら、コンテナもオワコン
890login:Penguin
2020/11/15(日) 09:50:30.99ID:1u6kpdDF2020/11/15(日) 10:14:18.12ID:5a//Qgwv
何れにせよロードバランサは使うので問題ない
ECSより無駄がないし管理コストを考えたら安い
特権は別に要らんかな
永続化はマネージドに逃がすからボリュームもイラネ
Fargateが最強
Fargateならcomposeも使えるのがイイね
ECSより無駄がないし管理コストを考えたら安い
特権は別に要らんかな
永続化はマネージドに逃がすからボリュームもイラネ
Fargateが最強
Fargateならcomposeも使えるのがイイね
2020/11/16(月) 20:07:10.13ID:eJ5ArXBp
運用まで真面目に考えるとdockerもそんなに便利なもんじゃないね
アプリ開発〜デプロイは楽になるんだろうけど
それって全体の2割にも満たないだろう
アプリ開発〜デプロイは楽になるんだろうけど
それって全体の2割にも満たないだろう
2020/11/16(月) 23:05:36.36ID:AmcnZ0mu
全体の2割が解決すれば十分じゃん
アホなの?
なんつーか、ハンマーで木を切断できなければ
便利なもんじゃないって言ってるみたいだw
アホなの?
なんつーか、ハンマーで木を切断できなければ
便利なもんじゃないって言ってるみたいだw
2020/11/16(月) 23:20:04.99ID:1Kp8LRiI
問題は2割を多少楽にするために余計な厄介事まで持ち込んでくること
2020/11/17(火) 00:24:09.16ID:FVso5f4r
全体の2割を解決するために5割の新しい問題を持ち込んでるのが実感。
2020/11/17(火) 00:24:47.94ID:VJE08jF1
厄介事じゃなくて、技術力ないやつが切り捨てられること
が正解だろ?厄介事なんてないよ
が正解だろ?厄介事なんてないよ
2020/11/17(火) 02:14:12.99ID:5f2SAbUx
クラウドリソースを使わせたいベンダの戦略にまんまと載せられてる
今更選択肢間違いでしたとも言い出せないから苦しいなと思いつつ使い続けるしかない
今更選択肢間違いでしたとも言い出せないから苦しいなと思いつつ使い続けるしかない
2020/11/17(火) 07:27:41.07ID:9t/i4DaB
マジでそれ!
Dockerなんかどっか行っちまえ!
Dockerなんかどっか行っちまえ!
899login:Penguin
2020/11/17(火) 08:02:22.48ID:STEsW5O+ 仮想マシン最強おじさんまた登場?
2020/11/17(火) 08:17:20.79ID:9Ei5md0D
くろかわこうへい、2019/7
今から追いつくDocker講座!AWS ECSとFargateで目指せコンテナマスター!〜シリーズ1回目〜
https://www.youtube.com/watch?v=DS5HBTMG1RI
彼は年明けから、会員制のAWS の初心者向け講座を始めるらしい。
彼は、Amazon の21万円のAWSの3日コースも受講したみたい
今から追いつくDocker講座!AWS ECSとFargateで目指せコンテナマスター!〜シリーズ1回目〜
https://www.youtube.com/watch?v=DS5HBTMG1RI
彼は年明けから、会員制のAWS の初心者向け講座を始めるらしい。
彼は、Amazon の21万円のAWSの3日コースも受講したみたい
2020/11/17(火) 09:36:46.63ID:5f2SAbUx
k0sすげーな
2020/11/17(火) 10:05:51.44ID:FVso5f4r
>>900
投じた21万を広告収入で回収しようと必死やなw
投じた21万を広告収入で回収しようと必死やなw
レス数が900を超えています。1000を超えると表示できなくなるよ。
ニュース
- 「習氏より先に言うとは…」 トランプ氏同盟国発言、日本政府内に困惑 [蚤の市★]
- 第2次大戦に触れトランプ氏「米中は同盟国」、当時は中華民国…「抗日」巡る中国の言説補強する恐れ ★7 [蚤の市★]
- 高市総理「日米は非常に強い絆で結ばれた同盟国」 トランプ大統領の“中国は同盟国だった”発言受け [首都圏の虎★]
- 【野球】広島東洋カープの矢野雅哉・前川誠太選手を書類送検 ゾンビたばこを巡る容疑 広島県警 [Ailuropoda melanoleuca★]
- 「暗い未来に子供を産みたくない…」それでも左派よりも右派の方が「たくさん子供を産む」のはなぜか【米研究】 [首都圏の虎★]
- 【速報】 ベッセント米財務長官、円安は問題であると高市政権と確認 [お断り★]
- 【訃報】米国債10年利回り5.2%突破、金利やばすぎでしょw [943688309]
- ガールズ&パンツァー第9話「絶対絶命です!」実況スレ🏡21時スタート
- ハッタショって人から「ハッタショ」と指摘されるのはめちゃくちゃ嫌がるよな
- 【高市日本】高市と石破、それぞれの訪米の時のおやびんがこちら [165981677]
- 女性「たのしいピクニック女は、男は好きでも女が見るとめっちゃ不安になる。生きる力がない女なのよ。それが分からないの?」 [592058334]
- 【悲報】現役の内閣参与、高市にブチギレ [404143271]