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
■ このスレッドは過去ログ倉庫に格納されています
2020/08/17(月) 00:19:36.93ID:PKLBL3Xf
2020/10/03(土) 19:34:25.82ID:dvVj5d3J
新人「Dockerfileイジってチューニングやー」
上司「設定外出ししといたから、それいじってってな」
新人「あっ、ハイ…(´・ω・`)」
上司「設定外出ししといたから、それいじってってな」
新人「あっ、ハイ…(´・ω・`)」
2020/10/03(土) 19:40:48.37ID:5u1z7vg2
>>548
振り出しにもどすな
振り出しにもどすな
2020/10/03(土) 19:41:08.04ID:5u1z7vg2
>>549
設定もDockerfileの一部
設定もDockerfileの一部
2020/10/04(日) 00:03:09.86ID:TUNorakS
Dockerfileでデータベースのチューニング?
なんだデータベースの設定変えてビルドし直すだけかよw
Dockerfileイジってねーじゃんwww
なんだデータベースの設定変えてビルドし直すだけかよw
Dockerfileイジってねーじゃんwww
2020/10/04(日) 00:19:36.26ID:57mQTVn/
もう邪魔だから隔離スレ建ててそこでやってくれない?
2020/10/04(日) 00:21:21.66ID:ZSOOZiph
イ・ヤ・♪
2020/10/04(日) 01:07:51.61ID:qaXwAWb0
>>552
迷惑だってよ
迷惑だってよ
2020/10/04(日) 02:55:25.23ID:ZSOOZiph
いやなら見るなってだけやろw
2020/10/04(日) 08:20:20.45ID:2aS5ndTz
気が触れてるな。
こいつと同じ会社でなくて良かった。
こいつの同僚はこいつと同じなのだろうか。それとも、こいつだけ…
こいつと同じ会社でなくて良かった。
こいつの同僚はこいつと同じなのだろうか。それとも、こいつだけ…
2020/10/04(日) 10:54:14.42ID:GuoVyRMr
docker exec あとのコマンドを補完できるライブラリとかプラグインってありますか?
2020/10/06(火) 12:31:34.44ID:XVHUwg7l
DockerfileのLinterはありますが
docker-compose.ymlのLinterってありませんか?
docker-compose.ymlのLinterってありませんか?
2020/10/07(水) 14:28:48.15ID:EbD/YQwX
docker-compose なんかローカルでのテストくらいにしか使わないのにLintもクソもないでしょ
あえてやるとしたら docker-compose.yml があったらテスト用だ本番とは違うとワーニング出すくらいだろうな
あえてやるとしたら docker-compose.yml があったらテスト用だ本番とは違うとワーニング出すくらいだろうな
2020/10/07(水) 14:37:43.21ID:li8DlbRF
配布するから
2020/10/07(水) 15:51:07.17ID:PVmnb2tX
Promscale: An analytical platform and long-term store for Prometheus, with the combined power of SQL and PromQL
https://blog.timescale.com/blog/promscale-analytical-platform-long-term-store-for-prometheus-combined-sql-promql-postgresql/
https://blog.timescale.com/blog/promscale-analytical-platform-long-term-store-for-prometheus-combined-sql-promql-postgresql/
2020/10/07(水) 17:44:35.10ID:r76JkEZp
k8sよりcomposeのほうが簡単でいい
swarmでいいじゃん
swarmでいいじゃん
2020/10/07(水) 19:32:19.08ID:EbD/YQwX
設定ファイルが多少簡単だろうと、まともなマネージドサービスがない時点で難易度MAXなのです
2020/10/07(水) 20:00:02.85ID:UXg/WLQW
fargateは?
最近docker comoose対応したよね
最近docker comoose対応したよね
2020/10/15(木) 08:32:32.32ID:KVzLYuoK
Fluent Bit supports Amazon S3 as a destination to route container logs
Posted On: Oct 14, 2020
Customers using container services including Amazon Elastic Container Service (ECS), Amazon Elastic Kubernetes Services (EKS), or self-managed Kubernetes can now send their container logs to Amazon Simple Storage Service (Amazon S3) using the Fluent Bit log router.
Fluent Bit allows customers to route container logs to various AWS and partner monitoring solutions including Amazon CloudWatch, Amazon Kinesis, Datadog, Splunk, and now Amazon S3.
Amazon ECS customers can use the FireLens interface in their task definition to configure Fluent Bit to send logs to Amazon S3.
Once you deploy your task definition, it will automatically start routing logs.
Customers using containers on Amazon EKS or self-managed Kubernetes clusters can now route container logs to Amazon S3 by installing Fluent Bit as a DaemonSet.
To get started see a FireLens example to route logs to Amazon S3 here, the Fluent Bit release notes here, and the Fluent Bit documentation here.
Posted On: Oct 14, 2020
Customers using container services including Amazon Elastic Container Service (ECS), Amazon Elastic Kubernetes Services (EKS), or self-managed Kubernetes can now send their container logs to Amazon Simple Storage Service (Amazon S3) using the Fluent Bit log router.
Fluent Bit allows customers to route container logs to various AWS and partner monitoring solutions including Amazon CloudWatch, Amazon Kinesis, Datadog, Splunk, and now Amazon S3.
Amazon ECS customers can use the FireLens interface in their task definition to configure Fluent Bit to send logs to Amazon S3.
Once you deploy your task definition, it will automatically start routing logs.
Customers using containers on Amazon EKS or self-managed Kubernetes clusters can now route container logs to Amazon S3 by installing Fluent Bit as a DaemonSet.
To get started see a FireLens example to route logs to Amazon S3 here, the Fluent Bit release notes here, and the Fluent Bit documentation here.
2020/10/16(金) 00:41:44.42
大切なパスワードを保存したイメージを間違ってdokerhubにうpしちゃったらどうなるの
2020/10/16(金) 01:24:07.31ID:EJhQrEIg
どうやったらそんなミスをするのかって悩むレベルだなw
2020/10/16(金) 23:01:40.14ID:P+buApNN
パスワード変えればいい
2020/10/17(土) 04:08:48.66ID:o45tI0TJ
dockerの理念的に
1アプリ1イメージ
使い終わったらコンテナ削除する
ってことらしいですが
開発環境の場合、毎回コンテナ削除してたら編集データとかリセットしませんか・・?
データやら設定ファイルだけはホストに保存するってことでしょうか?
1アプリ1イメージ
使い終わったらコンテナ削除する
ってことらしいですが
開発環境の場合、毎回コンテナ削除してたら編集データとかリセットしませんか・・?
データやら設定ファイルだけはホストに保存するってことでしょうか?
2020/10/17(土) 04:27:57.99ID:ZuG7iJvZ
>>570
dockerイメージ=プログラム(exeファイル)と考えればいいんだよ。
exeファイルの中に消えたらいけないデータを保存するかい?しないだろ?
つまり保存するデータはdockerイメージの外に保存するんだよ。
それがボリューム。ボリュームっていうのはdockerイメージを起動するときに割り当てる。
例えば任意のディレクトリをボリュームとして使うことができる。
exeファイルを実行するときにデータディレクトリを指定しているようなもんだ
こうやってdockerイメージの外のリソースを起動時に割り当てることで
dockerイメージ内部からはどこで動かしても同じように見えるようになるわけ
ちなみにデータと設定ファイル(アプリ実行中に保存しないもの)は別な。
設定ファイルはdockerイメージに埋め込んでいい(場合によっては外に出すこともある)
dockerイメージ=プログラム(exeファイル)と考えればいいんだよ。
exeファイルの中に消えたらいけないデータを保存するかい?しないだろ?
つまり保存するデータはdockerイメージの外に保存するんだよ。
それがボリューム。ボリュームっていうのはdockerイメージを起動するときに割り当てる。
例えば任意のディレクトリをボリュームとして使うことができる。
exeファイルを実行するときにデータディレクトリを指定しているようなもんだ
こうやってdockerイメージの外のリソースを起動時に割り当てることで
dockerイメージ内部からはどこで動かしても同じように見えるようになるわけ
ちなみにデータと設定ファイル(アプリ実行中に保存しないもの)は別な。
設定ファイルはdockerイメージに埋め込んでいい(場合によっては外に出すこともある)
2020/10/17(土) 04:58:28.34ID:o45tI0TJ
>>571
>dockerイメージ=プログラム(exeファイル)と
なるほどそういうことなんですね
>任意のディレクトリをボリュームとして使うことができる。
容量に余裕のあるHDDを指定して永続的に保存なんてこともできるのですね
アプリの設定を変えたあとその設定も他の環境でも共有したいとなると
イメージまるごと共有するか
クラウドに設定を保存するとか
ですかね
(chromeブラウザとかだとログインすればすぐ同期されていい感じなのですが)
ありがとうございました
>dockerイメージ=プログラム(exeファイル)と
なるほどそういうことなんですね
>任意のディレクトリをボリュームとして使うことができる。
容量に余裕のあるHDDを指定して永続的に保存なんてこともできるのですね
アプリの設定を変えたあとその設定も他の環境でも共有したいとなると
イメージまるごと共有するか
クラウドに設定を保存するとか
ですかね
(chromeブラウザとかだとログインすればすぐ同期されていい感じなのですが)
ありがとうございました
2020/10/17(土) 17:19:50.34
そんなゴリゴリに使い倒すつもりはないからホストPCのシステムディスクって250GB(SSD)もあれば十分だよね・・?
2020/10/17(土) 22:15:33.31ID:DLL24/S3
575login:Penguin
2020/10/24(土) 16:40:06.56ID:xxGzDPrd Docker Hub Image Retention Policy Delayed, Subscription Updates
https://www.docker.com/blog/docker-hub-image-retention-policy-delayed-and-subscription-updates/
Docker Hubのイメージ削除は2021年半ばまで延期するってよ・・・
リソース消費量ベースのサブスクリプションにどう対応したら良いかとか
そもそも現在のリソース消費量は?とかよく分からないからってフィードバックが寄せられたっぽい
https://www.docker.com/blog/docker-hub-image-retention-policy-delayed-and-subscription-updates/
Docker Hubのイメージ削除は2021年半ばまで延期するってよ・・・
リソース消費量ベースのサブスクリプションにどう対応したら良いかとか
そもそも現在のリソース消費量は?とかよく分からないからってフィードバックが寄せられたっぽい
2020/10/25(日) 11:54:59.14ID:8aW1oLHx
dockerhubの方針はよくわからないからgithubでいいや
2020/10/26(月) 01:04:34.96ID:AY57YqY6
imageを共有すること自体がないから
docker-compose.ymlの共有はするけど
docker-compose.ymlの共有はするけど
2020/10/26(月) 23:53:29.78ID:h3ceCoJ5
このご時世にvmみたいな使い方してしまった
はぁ
はぁ
2020/10/29(木) 03:10:38.44ID:PcZHu1+a
イメージ作成したときにダウンロードしてきたイメージはどこに保存されているの?
イメージ作成前後でボリュームのサイズ調べてもサイズが増減しない・・見間違えてるだけかな
イメージ作成前後でボリュームのサイズ調べてもサイズが増減しない・・見間違えてるだけかな
2020/10/29(木) 03:53:45.99ID:Hs3h4quA
最初にイメージの格納場所のサイズを設定するだろ。
~/Library/Containers/com.docker.docker/Data/vms/0/data/Docker.rawとか。
docker system df -v
で確認。
~/Library/Containers/com.docker.docker/Data/vms/0/data/Docker.rawとか。
docker system df -v
で確認。
581login:Penguin
2020/10/29(木) 14:00:29.61ID:rXwaKjQ8 Ready for pull rate limits? Docker outlines 'next chapter' as Google tells customers how to dodge subscriptions
https://www.theregister.com/2020/10/28/docker_pull_rate_limit_1_november/
The issue is worse for users of private GKE clusters since "all image pulls will be routed via a single NAT gateway".
Winser warned that "any service that relies on container images may be affected, including Cloud Build, Cloud Run, App Engine etc."
11月からNATゲートウェイ経由かつ匿名ユーザーだと
全くpull出来なくなる感じ?
ヤバくね?
https://www.theregister.com/2020/10/28/docker_pull_rate_limit_1_november/
The issue is worse for users of private GKE clusters since "all image pulls will be routed via a single NAT gateway".
Winser warned that "any service that relies on container images may be affected, including Cloud Build, Cloud Run, App Engine etc."
11月からNATゲートウェイ経由かつ匿名ユーザーだと
全くpull出来なくなる感じ?
ヤバくね?
2020/10/29(木) 18:00:59.00ID:jMkOFc/w
必要なイメージをプライベートレジストリに確保するだけ
2020/10/30(金) 21:51:31.58
https://labs.play-with-docker.com/
でボリュームのマウントがうまく行かない
$ cat test.txt
$ docker run -it -v /my/:/var/my ubuntu
コンテナの端末に入って/var/myに移動してもtest.txt無し
ローカルのPCでは成功したのになあ
でボリュームのマウントがうまく行かない
$ cat test.txt
$ docker run -it -v /my/:/var/my ubuntu
コンテナの端末に入って/var/myに移動してもtest.txt無し
ローカルのPCでは成功したのになあ
2020/10/30(金) 22:54:14.38
補足
test.txtはmyディレクトリに作ってある
test.txtはmyディレクトリに作ってある
2020/10/30(金) 22:56:41.22
たぶん/my/のパスが間違ってるってことだよね
ほんとは
/なんたら/かんたら/うんたら/my
ってパスなんだろうけど
ほんとは
/なんたら/かんたら/うんたら/my
ってパスなんだろうけど
586583
2020/10/30(金) 23:06:02.09 改めてやってみたら
/my:/var/my
じゃなく
/root/my:
でやったらできた!
/my:/var/my
じゃなく
/root/my:
でやったらできた!
2020/10/30(金) 23:57:29.93ID:dHpXX+dB
python使いたいだけなのに886MBって重くない?
2020/10/31(土) 00:15:50.02ID:Vfwi3dRZ
うそ!?私のPython 41.09MB!
589login:Penguin
2020/10/31(土) 09:33:06.67ID:4qiE9XbQ alpineベースのPythonは扱いが難しい
特にCライブラリを使うパッケージが必要なプログラムの場合、ソースからビルドされて遅かったり
alpineにコンパイル済みのがあってもバージョンが古かったり
たまにglibcとmuslの違いから起きる互換性の問題がある
alpineよりslimの方がオヌヌメ
alpineよりは大きいがまだ小さめ
特にCライブラリを使うパッケージが必要なプログラムの場合、ソースからビルドされて遅かったり
alpineにコンパイル済みのがあってもバージョンが古かったり
たまにglibcとmuslの違いから起きる互換性の問題がある
alpineよりslimの方がオヌヌメ
alpineよりは大きいがまだ小さめ
2020/10/31(土) 13:31:17.31ID:nDrTm0nA
python:3.7-slim
で-alpineとか-slimつけるだけでいけた�d
で-alpineとか-slimつけるだけでいけた�d
2020/10/31(土) 13:40:42.84ID:Vfwi3dRZ
つけるだけでいけたの前にdocker-hubくらい見ようよ
2020/10/31(土) 14:12:19.71ID:nDrTm0nA
ん dockerhubみたら
python:<version>-slim
って書いてあったよ
python:<version>-slim
って書いてあったよ
2020/10/31(土) 14:34:33.75ID:oeYVChnG
Docker Hubを見るのも当然だし、大元のDovkerfileを読もうよ。
594login:Penguin
2020/11/01(日) 17:44:44.70ID:M5iteKem 謎の現象に苦しんでいます。
CentOS 7で、yumでdockerを導入しました。
docker volume creteで、vol_etcと、vol_varを作成し、docker runのオプションで、次のようにボリュームを指定のディレクトリにマウントしました。
--mount source=vol_etc,target=/etc --mount source=vol_var,target=/var
このコンテナはimageから起動しているので、オリジナルの/etcと/varとが、それぞれボリュームにコピーされるはずです。
オリジナル/etcの内容は全てボリュームにコピーされたようです。
しかし、/varの一部のディレクトリの内容が、なぜかボリュームにコピーされません。
そのため、そのディレクトリの内容のみ空っぽになってしまいます。
(具体的には、/var/spool/hylafaxというディレクトリが空になります。/var/spool/の他のサブディレクトリについては中身がコピーされています。)
念の為、ボリュームをマウントせずにコンテナを起動すると、問題のディレクトリも中身が入っていることが確認されます。
原因として何が考えられるでしょうか。お手上げ状態です。
CentOS 7で、yumでdockerを導入しました。
docker volume creteで、vol_etcと、vol_varを作成し、docker runのオプションで、次のようにボリュームを指定のディレクトリにマウントしました。
--mount source=vol_etc,target=/etc --mount source=vol_var,target=/var
このコンテナはimageから起動しているので、オリジナルの/etcと/varとが、それぞれボリュームにコピーされるはずです。
オリジナル/etcの内容は全てボリュームにコピーされたようです。
しかし、/varの一部のディレクトリの内容が、なぜかボリュームにコピーされません。
そのため、そのディレクトリの内容のみ空っぽになってしまいます。
(具体的には、/var/spool/hylafaxというディレクトリが空になります。/var/spool/の他のサブディレクトリについては中身がコピーされています。)
念の為、ボリュームをマウントせずにコンテナを起動すると、問題のディレクトリも中身が入っていることが確認されます。
原因として何が考えられるでしょうか。お手上げ状態です。
2020/11/01(日) 17:56:10.61ID:M5iteKem
>>594
自己レスです。
オリジナルの/var/spool/hylafax 内に、pipeファイルがあります。
prw------- 1 uucp uucp 0 Sep 19 2018 FIFO
これが原因で、ボリュームにサブディレクトリも含めてコピーがされない可能性はあるでしょうか。
自己レスです。
オリジナルの/var/spool/hylafax 内に、pipeファイルがあります。
prw------- 1 uucp uucp 0 Sep 19 2018 FIFO
これが原因で、ボリュームにサブディレクトリも含めてコピーがされない可能性はあるでしょうか。
2020/11/01(日) 18:14:02.39ID:RPHXCdM8
pipeを削除したイメージを作ってやってみれば原因かどうかわかるんじゃないの
2020/11/01(日) 19:30:01.48ID:6Gl5tSwg
2020/11/01(日) 19:32:30.47ID:6Gl5tSwg
/etc や /var 以下の必要なものだけをマウントする場合はギリOKです。
そのDockerイメージは何の機能をコンテナ化したものですか?
その機能に必要なものだけをマウントしてください
そのDockerイメージは何の機能をコンテナ化したものですか?
その機能に必要なものだけをマウントしてください
2020/11/01(日) 19:33:45.60ID:6Gl5tSwg
ついでに言っておくと/etcや/varなんかをDockerコンテナに
割り当てたりなんかしたら最悪ホストシステムが破壊されます。
割り当てたりなんかしたら最悪ホストシステムが破壊されます。
2020/11/01(日) 19:41:34.60ID:lesnXEzs
アプリ屋くん今日も大暴走
2020/11/01(日) 20:10:35.55ID:w/PjhgBB
>>594
>― mount source=vol_etc,target=/etc --mount source=vol_var,target=/var
なんで、こうするのか、理解に苦しむわ…。
とくに、 /var をなぜVolumeにする?
意味がわからない。
>― mount source=vol_etc,target=/etc --mount source=vol_var,target=/var
なんで、こうするのか、理解に苦しむわ…。
とくに、 /var をなぜVolumeにする?
意味がわからない。
2020/11/02(月) 00:03:07.68ID:BCpQPJWu
Dockerを仮想マシンか何かだと思ってるんだろ
/etcや/varを共有してDockerコンテナの中で作業しようとしてる
/etcや/varを共有してDockerコンテナの中で作業しようとしてる
603login:Penguin
2020/11/02(月) 00:51:55.56ID:FrveCY20 仮想マシンでvar とかetcの共有なんてしないけどね。
2020/11/02(月) 00:55:50.11ID:BCpQPJWu
だから仮想マシンとしてログイン(?)して使いたいけど
/etcや/varを共有したいって思ったんでしょ?
アプリ専用コンテナとして考えれば
必要なものだけを共有するという発想になる
そんな広い範囲のディレクトリを参照するってことは
そのコンテナでいろんな作業をしたいってことだろう
/etcが見れればいろんなアプリ何も設定しなくても動くと勘違いしちゃうもんねw
/etcや/varを共有したいって思ったんでしょ?
アプリ専用コンテナとして考えれば
必要なものだけを共有するという発想になる
そんな広い範囲のディレクトリを参照するってことは
そのコンテナでいろんな作業をしたいってことだろう
/etcが見れればいろんなアプリ何も設定しなくても動くと勘違いしちゃうもんねw
2020/11/02(月) 01:02:37.86ID:4g2Afrsx
もうめちゃくちゃだなこいつ
質問者はホストと共有するなんて言ってねえし
質問者はホストと共有するなんて言ってねえし
2020/11/02(月) 01:14:54.26ID:BCpQPJWu
?
ボリュームってなんのことか知ってますか?
ボリュームってなんのことか知ってますか?
607login:Penguin
2020/11/02(月) 04:24:32.64ID:FrveCY20 >>594
Dockerのmountとかvolumeってのは、システムの可変の部分を定義することね。
/var/www/html 配下をマウントして、中身はプライベートなgithub/gitlabとかからpullするとか。
或いは/etc/nginx/conf.d配下だけをマウントして独自の定義ファイル置くとか。
例えホストと同等のゲストを作りたいと思ったとしてもホストのetcとゲスト(コンテナ)のetc全く別物w
/etc/とか/var/直下をゲストがマウントしたいとか、多分Dockerの作者も仰天の利用方法だと思うわ。
Dockerのmountとかvolumeってのは、システムの可変の部分を定義することね。
/var/www/html 配下をマウントして、中身はプライベートなgithub/gitlabとかからpullするとか。
或いは/etc/nginx/conf.d配下だけをマウントして独自の定義ファイル置くとか。
例えホストと同等のゲストを作りたいと思ったとしてもホストのetcとゲスト(コンテナ)のetc全く別物w
/etc/とか/var/直下をゲストがマウントしたいとか、多分Dockerの作者も仰天の利用方法だと思うわ。
2020/11/02(月) 08:57:26.54ID:EcOPmiOb
こいつvolumeとbind mountの区別ついてなさそうだな
2020/11/03(火) 16:30:43.03ID:6B3+AB0D
DOCKER_CONTENT_TRUSTって設定するべきでしょうか?
2020/11/03(火) 17:19:49.85ID:fVpH/w23
してもいいししなくてもいい
2020/11/03(火) 17:37:57.63
DockerfileでRUNするたびにdocker imagesの一覧が増えていくんだけどなんで
2020/11/03(火) 20:10:29.81ID:6B3+AB0D
>>610
設定しておくことにしました
設定しておくことにしました
613login:Penguin
2020/11/03(火) 20:55:06.23ID:ZfhIPw1B Use GitHub Actions to deploy your application to IBM Cloud Kubernetes Service
https://youtu.be/r5hyAmuNHyE
https://youtu.be/r5hyAmuNHyE
2020/11/03(火) 21:01:25.70ID:3zNCbq6k
2020/11/03(火) 21:13:57.95ID:SU13O3bL
>>601
使用するアプリが、/var/spool/app以下に設定ファイルをいろいろと自動作成するんですよ。
それから/var/spoolは、postfixも作業領域を持つので、
varまるごとボリューム化しておけば便利だと思いました。
使用するアプリが、/var/spool/app以下に設定ファイルをいろいろと自動作成するんですよ。
それから/var/spoolは、postfixも作業領域を持つので、
varまるごとボリューム化しておけば便利だと思いました。
2020/11/03(火) 21:15:55.55ID:SU13O3bL
2020/11/03(火) 21:17:53.87ID:SU13O3bL
2020/11/03(火) 21:18:50.16ID:SU13O3bL
2020/11/03(火) 21:20:18.59ID:SU13O3bL
2020/11/03(火) 21:23:58.03ID:SU13O3bL
コンテナをprivilegeで動作させて、sshログインできるように設定しました。
リモートでコンテナ内に入ってから、yumで必要なパッケージを導入して、
アプリ環境を整えました。その後、commitしてイメージに固めました。
/etcや、/var/spoolは、コンテナ内での作業内容が保存されるので、
永続化のためにボリュームに切り出しておきます。
こんな使い方便利すぎて、どこが悪い?
リモートでコンテナ内に入ってから、yumで必要なパッケージを導入して、
アプリ環境を整えました。その後、commitしてイメージに固めました。
/etcや、/var/spoolは、コンテナ内での作業内容が保存されるので、
永続化のためにボリュームに切り出しておきます。
こんな使い方便利すぎて、どこが悪い?
2020/11/03(火) 21:34:39.97ID:mxkbANnQ
そういう運用したいならLXCのほうがいいよ
2020/11/03(火) 22:16:22.40ID:M5SiUIu9
むしろVMの方が楽まである
623login:Penguin
2020/11/03(火) 23:10:38.94ID:SU13O3bL624login:Penguin
2020/11/03(火) 23:14:12.57ID:SU13O3bL >>621
CentOS7イメージだとprivilegeコンテナにすれば仮想マシンぽく運用できた。
でも、CentOS6イメージだとそういうわけには行かなかった。
こういう場合には、LXCというのを使うのが良いのかなと思っています。
CentOS7イメージだとprivilegeコンテナにすれば仮想マシンぽく運用できた。
でも、CentOS6イメージだとそういうわけには行かなかった。
こういう場合には、LXCというのを使うのが良いのかなと思っています。
2020/11/04(水) 00:26:19.21ID:5EaF6Elr
Dockerのマウント3種類についてわかったことをまとめる
https://qiita.com/y518gaku/items/456f34c317a65a9dae86
Volumes、bind mounts、tmpfs mounts について
https://qiita.com/y518gaku/items/456f34c317a65a9dae86
Volumes、bind mounts、tmpfs mounts について
626login:Penguin
2020/11/04(水) 00:46:11.05ID:8vCtX8KM ホストディレクトリをコンテナにマウントする場合も、Dockerボリュームを複数コンテナで共有する場合も、排他同時アクセス機能はないんでしょ?
それができたら、ファイルサーバ機能を別コンテナに切り分けたりできるのになあ。
それができたら、ファイルサーバ機能を別コンテナに切り分けたりできるのになあ。
2020/11/04(水) 01:03:12.04ID:8GrlF7V6
誰かDocker Certified Associate受けたことある人おらん?
英語あんまり自信ないんだが、問題文の英語どのくらいの難易度か教えて欲しい
英語あんまり自信ないんだが、問題文の英語どのくらいの難易度か教えて欲しい
628login:Penguin
2020/11/04(水) 01:10:20.49ID:7tuD0WTP >>620
便利なんだろうけどIaaCとは全然違うような?
メモリ、ストレージは節約できるだろうけどインフラの構築手順をコード化
して共有するという、コンテナ化の元の理念は死んでる気がする。
別に原理主義ではないけどな。属人化の部分が解消されない気はする。
便利なんだろうけどIaaCとは全然違うような?
メモリ、ストレージは節約できるだろうけどインフラの構築手順をコード化
して共有するという、コンテナ化の元の理念は死んでる気がする。
別に原理主義ではないけどな。属人化の部分が解消されない気はする。
629login:Penguin
2020/11/04(水) 01:23:13.41ID:aRkKqxcc Linuxのシェル変数$USERを
Dockerfileの中でのみ使う方法を教えてください
${USER}とか$USERでは取れませんでした
ARG USER=$USER
とか
ARG USER=${USER}
もだめでした
Dockerfileの中でのみ使う方法を教えてください
${USER}とか$USERでは取れませんでした
ARG USER=$USER
とか
ARG USER=${USER}
もだめでした
630login:Penguin
2020/11/04(水) 01:37:00.44ID:7tuD0WTP2020/11/04(水) 01:37:41.85ID:aRkKqxcc
>>630
ホスト側です
ホスト側です
632login:Penguin
2020/11/04(水) 01:46:40.22ID:7tuD0WTP2020/11/04(水) 03:46:47.92ID:QtKCHGIC
そういうこと。仮想マシンがあるのに
わざわざDockerでやる必要がない
わざわざDockerでやる必要がない
2020/11/04(水) 03:47:05.33ID:QtKCHGIC
DockerはDockerの目的にために利用するのがいい
2020/11/04(水) 03:57:36.50ID:UuvmniCF
でもDockerの方がGUI無い分軽いじゃん
636login:Penguin
2020/11/04(水) 04:10:56.90ID:7tuD0WTP >>620
あと、この使い方は最初の一発目位は良いけど、運用が進むとそのうちexportされたetcやvarに
依存するようになって、ホストAで動いていたものがホストBでpullすると動かないとか、
コンテナの最大のウリだった可搬性も消えてなくなる気がする。
・・・まあ、VMで運用してメモリ食うことが問題なら、メモリ増やすことが解決策であって
privilegeにしてシステム全体をリスクに晒してまでコンテナ化して解決しよう、というのは
ちょっと理解し難いな。
あと、この使い方は最初の一発目位は良いけど、運用が進むとそのうちexportされたetcやvarに
依存するようになって、ホストAで動いていたものがホストBでpullすると動かないとか、
コンテナの最大のウリだった可搬性も消えてなくなる気がする。
・・・まあ、VMで運用してメモリ食うことが問題なら、メモリ増やすことが解決策であって
privilegeにしてシステム全体をリスクに晒してまでコンテナ化して解決しよう、というのは
ちょっと理解し難いな。
2020/11/04(水) 08:25:33.86ID:8vCtX8KM
>>628
>インフラの構築手順をコード化して共有するという、コンテナ化の元の理念
コード化するということは、意図したとおりにエラーなく進行するかいわばデバッグが必要になると思う。
おっしゃるとおりそれを共有するなら一回のデバッグの努力に意義があるけど、
自分でコンテナとそのイメージを構築するだけなら、
sshログインしてコンテナ内で直接構築作業すれば楽に思う。
共有しない構築手順のコード作成は労力がめんどうくさくなる。
>インフラの構築手順をコード化して共有するという、コンテナ化の元の理念
コード化するということは、意図したとおりにエラーなく進行するかいわばデバッグが必要になると思う。
おっしゃるとおりそれを共有するなら一回のデバッグの努力に意義があるけど、
自分でコンテナとそのイメージを構築するだけなら、
sshログインしてコンテナ内で直接構築作業すれば楽に思う。
共有しない構築手順のコード作成は労力がめんどうくさくなる。
2020/11/04(水) 08:30:52.94ID:8vCtX8KM
>>636
>運用が進むとそのうちexportされたetcやvarに依存するようになって、ホストAで動いていたものがホストBでpullすると動かない
運用が進む前から、最初から、ボリュームに逃したetcやvarに依存しているよ。
もちろん、別のホストでコンテナを動作させるには、そのコンテナのイメージと、ボリューム内容、そしてrunするためのワンライナーが必要になる。
それでも、ホストマシンに直にシステム構築するよりもはるかに可搬性が高いと思う。
万人向けに共有する場合であればおっしゃるとおり、可搬性は悪いと言えると思うけどね。
コンテナを削除しても残り続けるボリュームという概念が存在するとは、
Dockerはボリュームに逃した内容(etc,varなど)に依存するコンテナがあっても仕方ないと考えているのではないかと思う。
>運用が進むとそのうちexportされたetcやvarに依存するようになって、ホストAで動いていたものがホストBでpullすると動かない
運用が進む前から、最初から、ボリュームに逃したetcやvarに依存しているよ。
もちろん、別のホストでコンテナを動作させるには、そのコンテナのイメージと、ボリューム内容、そしてrunするためのワンライナーが必要になる。
それでも、ホストマシンに直にシステム構築するよりもはるかに可搬性が高いと思う。
万人向けに共有する場合であればおっしゃるとおり、可搬性は悪いと言えると思うけどね。
コンテナを削除しても残り続けるボリュームという概念が存在するとは、
Dockerはボリュームに逃した内容(etc,varなど)に依存するコンテナがあっても仕方ないと考えているのではないかと思う。
2020/11/04(水) 08:33:48.04ID:8vCtX8KM
2020/11/04(水) 08:38:36.55ID:8vCtX8KM
641login:Penguin
2020/11/04(水) 09:25:01.57ID:1buxXrD8 IaC全くしてないレガシーなPHPのシステムをDocker+ECSに移行なら昔やった
でも、本番でバインドマウントしてるのはアップロードされたファイルだけだな
設定は環境変数から取得するようにして
アップロードされたファイルなど一部だけをバインドマウント経由でEFSに保存する
他は全てnginxやphpのイメージに予め入れておく
ログは標準出力経由で全てコンテナのログへ
DBは元から別サーバー
ローカル開発環境ではUnisonでphpファイルを同期
開発機のphp入ってるディレクトリを丸ごとマウントでも良いか、このシステムは肥大化してて遅いのでUnisonを使用
でも、本番でバインドマウントしてるのはアップロードされたファイルだけだな
設定は環境変数から取得するようにして
アップロードされたファイルなど一部だけをバインドマウント経由でEFSに保存する
他は全てnginxやphpのイメージに予め入れておく
ログは標準出力経由で全てコンテナのログへ
DBは元から別サーバー
ローカル開発環境ではUnisonでphpファイルを同期
開発機のphp入ってるディレクトリを丸ごとマウントでも良いか、このシステムは肥大化してて遅いのでUnisonを使用
2020/11/04(水) 09:29:46.18ID:sMNwaZ5l
俺は横着なのでDockerfileが構築手順書がわりになる方が便利
それがなけりゃlxc使う(かつては使ってた)
docker runも--rm付けて毎回クリーンに起動するのが性に合う
無論ログやdbファイルはボリュームで外部化するけど
それがなけりゃlxc使う(かつては使ってた)
docker runも--rm付けて毎回クリーンに起動するのが性に合う
無論ログやdbファイルはボリュームで外部化するけど
2020/11/04(水) 10:03:23.77ID:eFolKj+u
>>626
直接マウントするのはハードウェア1つにつきコンテナ1つだけ
マウントしてるコンテナが他のコンテナにサービスとしてファイルアクセスを提供する
排他制御とかもその1つのコンテナが全部引き受ける
直接マウントするのはハードウェア1つにつきコンテナ1つだけ
マウントしてるコンテナが他のコンテナにサービスとしてファイルアクセスを提供する
排他制御とかもその1つのコンテナが全部引き受ける
2020/11/04(水) 10:13:53.42ID:c69K63Cq
>>636
dockerに限らずIasCって必ずしもコストパフォーマンスがいいとも限らんからな
自動化の制御が複雑になるなら手作業で設定してコミットしちゃったほうが簡単だって考え方は十分ありだと思うよ
IasCに疲弊してる企業が、よくよく考えたら本当に欲しかったものはサーバーの状態をexp impする機能だった
dockerに限らずIasCって必ずしもコストパフォーマンスがいいとも限らんからな
自動化の制御が複雑になるなら手作業で設定してコミットしちゃったほうが簡単だって考え方は十分ありだと思うよ
IasCに疲弊してる企業が、よくよく考えたら本当に欲しかったものはサーバーの状態をexp impする機能だった
2020/11/04(水) 11:06:14.87ID:8vCtX8KM
>>643
ホストディレクトリをマウントしているコンテナが、
他のコンテナにサービスとしてファイルアクセスを提供するには、
XFSとか、Sambaとか、排他制御ができるというオンラインファイル共有サービスを公開するということですか。
なるほど、じゃあ、ボリュームをマウントしたコンテナが、
それらの共有サービスを公開すれば、他のコンテナでもボリューム内容を共有できますね。
ホストディレクトリをマウントしているコンテナが、
他のコンテナにサービスとしてファイルアクセスを提供するには、
XFSとか、Sambaとか、排他制御ができるというオンラインファイル共有サービスを公開するということですか。
なるほど、じゃあ、ボリュームをマウントしたコンテナが、
それらの共有サービスを公開すれば、他のコンテナでもボリューム内容を共有できますね。
2020/11/04(水) 11:10:18.58ID:8vCtX8KM
2020/11/04(水) 11:13:28.47ID:QtKCHGIC
2020/11/04(水) 11:14:58.00ID:QtKCHGIC
>>646
それはあなたの感想であって、意見や主張は何も含まれてないですね
それはあなたの感想であって、意見や主張は何も含まれてないですね
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「習氏より先に言うとは…」 トランプ氏同盟国発言、日本政府内に困惑 [蚤の市★]
- 第2次大戦に触れトランプ氏「米中は同盟国」、当時は中華民国…「抗日」巡る中国の言説補強する恐れ ★7 [蚤の市★]
- 高市総理「日米は非常に強い絆で結ばれた同盟国」 トランプ大統領の“中国は同盟国だった”発言受け [首都圏の虎★]
- 【野球】広島東洋カープの矢野雅哉・前川誠太選手を書類送検 ゾンビたばこを巡る容疑 広島県警 [Ailuropoda melanoleuca★]
- 「暗い未来に子供を産みたくない…」それでも左派よりも右派の方が「たくさん子供を産む」のはなぜか【米研究】 [首都圏の虎★]
- 【速報】 ベッセント米財務長官、円安は問題であると高市政権と確認 [お断り★]
- 【訃報】米国債10年利回り5.2%突破、金利やばすぎでしょw [943688309]
- ガールズ&パンツァー第9話「絶対絶命です!」実況スレ🏡21時スタート
- ハッタショって人から「ハッタショ」と指摘されるのはめちゃくちゃ嫌がるよな
- 【高市日本】高市と石破、それぞれの訪米の時のおやびんがこちら [165981677]
- 女性「たのしいピクニック女は、男は好きでも女が見るとめっちゃ不安になる。生きる力がない女なのよ。それが分からないの?」 [592058334]
- 【悲報】現役の内閣参与、高市にブチギレ [404143271]