「コンテナセキュリティ - Forkwell Library#26」の資料です。 https://forkwell.connpass.com/event/287259/
「コンテナセキュリティ - Forkwell Library#26」の資料です。 https://forkwell.connpass.com/event/287259/
章立て はじめに Docker・Container型仮想化とは Docker一強時代終焉の兆し Container技術関連史 様々なContainer Runtime おわりに 1. はじめに Containerを使うならDocker、という常識が崩れつつある。軽量な仮想環境であるContainerは、開発からリリース後もすでに欠かせないツールであるため、エンジニアは避けて通れない。Container実行ツール(Container Runtime)として挙げられるのがほぼDocker一択であり、それで十分と思われていたのだが、Dockerの脆弱性や消費リソースなどの問題、Kubernetes(K8s)の登場による影響、containerdやcri-o等の他のContainer Runtimeの登場により状況が劇的に変化している。本記事では、これからContainerを利用したい人や再度情報
3行まとめ MRSKは「コンテナ時代のCapistrano(Capistrano for Containers)」的なデプロイツール。すごくDHHぽい。 $5くらいの素のcompute instanceがHerokuみたいに使えるようになる(ただしDBやS3やRedisは必要に応じて別途用意する前提、合わせて別インスタンスで立ち上げる機能もあり) 37Signalsではproductionで使ってるようだけどまだまだ荒削りなので、しばらくは一緒に開発したいくらいの勢いで使いたい人向け MRSKとは MRSKはRailsの創始者DHHが新しく作ったデプロイツールです。 初コミットは2023年の1月7日ということで真新しいプロダクトなのですが、中身を見るとあまり新しそうに見えないというか、今どきのクラウドネイティブな世界観から見ると正直懐かしい感じもあります。なんで今これが作られたのでしょうか
はじめに WASMをブラウザの外で動かすトレンドに関して「Linuxコンテナの「次」としてのWebAssemblyの解説」というタイトルで動画を投稿したのですが、動画では話しきれなかった内容をこちらの記事で補完したいと思います。 2022年もWebAssembly(WASM)の話題が多く発表されましたが、そのひとつにDocker for DesktopのWASM対応があります。FastlyやCloudflareもエッジ環境でWASMを動かすソリューションを持っていますし、MSのAKS(Azure Kubernetes Service)でもWASMにpreview対応しています。WASM Buildersでも2023年のWASMの予想としてWASMのアプリケーションランタイム利用に関して言及されました。 WASMといえば元々ブラウザ上で高速にC++のコードなどを実行するところから始まっている
はじめに 2022年2月からDocker Desktopが有料(無償利用の猶予期間が終了)したことから、Docker Desktopの代替ツールが色々と登場してきました。「[Mac環境] Docker Desktopの代替として何が最適か」では、Rancher Desktopを代替ツールとしておすすめしましたが、2022年10月24日のKubeCon North Americaにおいて、Red Hat社から「Podman Desktop」が発表されました。 Podman Desktopは、デーモンレスのコンテナエンジンであるPodmanの開発者向けGUIツールです。Podmanでのコンテナの起動・停止、コンテナログの参照、コンテナイメージのビルドといった基本的な操作をGUIで可能とします。また、Kubernetes/OpenShiftへのコンテナのPodとしてのデプロイといったKubern
はじめに 参考 Stargz 概要 詳細 HTTP Range 互換性 Stargzまとめ eStargz 概要 最適化 TOC, TOCEntry Footer Stargz Snapshotter eStargzまとめ 実験 トークン取得 インデックス取得 マニフェスト取得 Footer取得 TOC取得 ファイル取得 実験まとめ 余談 応用例 自作ライブラリ 計測 まとめ はじめに コンテナイメージのlazy pullingが各ツールで利用可能になりつつあるようです。以下は stargz-snapshotter のメンテナである @TokunagaKohei さんによるブログです。 medium.com lazy pullingが何かを簡単に説明しておくと、コンテナイメージ全体を最初にpullせずにコンテナ実行後に必要なファイルのみを遅延でpullするものです。docker runしよ
はじめに 今朝に書いたブログが思ったより反響が大きくて、「Dockerが死んだ」という勘違いをされている方も多かったので追加でエントリーを書きました。 blog.inductor.me 決してそんなことはないので、対応が必要なケースを見ていこうと思います。 はじめに 対応が必要ではないケース Kubernetesを使わない人たち 本番はKubernetesでも、開発にDocker Composeを使っているデベロッパーの開発環境 対応が必要なケース 開発環境でも手元でKubernetesを利用する人たち NVIDIA DockerをKubernetesで使っている人たち Kubernetesワークロードの中で「Docker in Docker」や「Docker APIに依存した処理」を動かしている場合 Dockerの機能を使ってこれまでやっていたことについて 対応が必要ではないケース Ku
追記: Kubernetes側での公式のアナウンスが2本出ているのでこちらも合わせてご覧ください。 kubernetes.io kubernetes.io Kubernetesコミュニティを眺めていたら、やたらめったら色んな人達が1.20 RCのリリースノート引っ張り出して「Dockerが非推奨になるからちゃんと対策を検討してね!!!」とアナウンスをしていて、挙げ句SIG Contributexではその対策に追われてバタバタしている自体を観測しました。 CNCF Ambassador Slackでもだいぶ燃え上がっていて、見かねて dev.to に記事を投稿したのでそれをかんたんに日本語にまとめてみようと思います。英語のほうはこちらをご覧ください。 dev.to 追記2. 影響範囲を知りたい場合はまずこちらをお読みください blog.inductor.me 追記2. 影響範囲を知りたい場合
現在開催中のre:InventでAWS Lambdaがコンテナのサポートをするという発表がありましたね。 aws.amazon.com というわけでちょっと試してみました。 素材はここにあげてあります。 github.com 流れとしては、 普通にファンクション書く Dockerfile作る イメージをビルドする イメージをECRにプッシュする Lambdaファンクションを作るときにECR上のイメージを指定する という感じです。3,4のコマンド実行例はReadmeに記載しています。 イメージに関してはRuntime APIを実装する必要があるんですが、現在Lambdaがサポートしている各言語向けには既に用意されていてリリースされています。例えばNode.jsであればnpm install aws-lambda-ricでインストールできます。 加えて、これを組み込み済のベースイメージが既に用
ProductIntroducing GitHub Container RegistryGitHub Container Registry introduces easy sharing across organizations, fine-grained permissions, and free, anonymous access for public container images Since releasing GitHub Packages last year, hundreds of millions of packages have been downloaded from GitHub, with Docker as the second most popular ecosystem in Packages behind npm. Our users are leanin
この記事では、Dockerを例に、コンテナログ処理の一般的な方法やベストプラクティスをいくつか紹介しています。 背景 Docker, Inc. 旧社名:dotCloud, Inc)は、2013年にDockerをオープンソースプロジェクトとしてリリースしました。その後、Dockerに代表されるコンテナ製品は、分離性能の良さ、移植性の高さ、リソース消費の少なさ、起動の早さなど複数の特徴から、瞬く間に世界中で人気を博しました。下図は2013年からのDockerとOpenStackの検索傾向を示しています。 コンテナ技術は、アプリケーションの展開や配信など、多くの便利さをもたらします。また、以下のようなログ処理のための多くの課題ももたらします。 1、コンテナの中にログを保存した場合、コンテナが取り外されるとログは消えてしまいます。コンテナは頻繁に作成・削除されるため、コンテナのライフサイクルは仮想
Docker: MySQLコンテナのポートをMac側に公開せずに、MacからそのMySQLに接続する小技Dockerdocker-composemutagen DockerやDocker Composeで、MySQLコンテナを起動するとき、どうしてもポートをホスト側に公開できないが、ホスト側からはDBにはアクセスしたいことがあります。 この投稿では、Mutagenを利用して、ポートを開けずとも、ホスト側からMySQLコンテナにアクセスする方法を紹介します。 この投稿が解決したいこと この投稿が解決するのは、下記のような制約とやりたいことの板ばさみ状態です。 制約 MySQLコンテナのポートを開けるのが面倒。 例えば、複数のプロジェクトに携わっていて、複数のdocker-compose.ymlがあり、それぞれにMySQLコンテナがある。 それぞれに3306, 3307, 3308, ...と
Red Hatは、同社が中心となってオープンソースで開発中のコンテナエンジン「Podman」がバージョン1.0に到達したことを発表しました。 Podmanはもともとコンテナエンジンの標準仕様であるOCI対応として開発されていた「cri-o」をベースに開発が始まったとされています。 Podmanはコンテナエンジンの標準仕様である「cri-o」に対応し、現在はDockerとほぼ同じDockerコマンドをサポートし、ベータ版のRed Hat Enterprise Linux 8にも同梱されています。 今回、Podmanが正式版となるバージョン1.0に到達したことで、Red Hat Enterprise Linux 8が正式版となったときにはDockerの代わりにPodmanが標準のコンテナエンジンになるとの指摘もあります。 Podmanのおもな特長は以下です。 Rootless containe
この記事は何か イメージやコンテナなどの基本からdocker-compose、docker-machine, docker swarmなどのDocker周りの様々な概念の全体像を整理して、Dockerの仕組みを理解するための記事 対象読者 ・Dockerって何? ・Dockerちょっと勉強したけどDocker compose? Docker machine? Docker Swarm? 色々ありすぎて意味不明 という方 中編では、「データマウント(volume), Docker Network, Docker Compose」 について書いて行きます。 前編はこちら ④ Dockerにおけるデータ管理 起動したコンテナ内で扱う動的なデータは、読み書き可能な最上レイヤー(コンテナレイヤー)に置くこともできますが、 ・コンテナが削除された時点でそのコンテナ内のデータは消える ・コンテナ間でデー
社内向けの講演のために作ったスライドですが、わざわざGoogle プレゼンテーションにするまでもなかったし、特段秘密の情報もなかったので、Qiitaスライドの方に作りました 多分ちょいちょい追記します 対象 まだコンテナ開発していない人 コンテナ開発がうまくいかない人 既存プロジェクトをコンテナ化したい人 お品書き コンテナの概念のおさらい コンテナでの開発 docker のネットワーク docker-compose を使った開発の効率化 コンテナの概念のおさらい VM と コンテナ コンテナの目的 ある前提となる状態のもとで、特定のコマンド(のみ)を実行したときの動作をシミュレートすること サーバの中のプロセス $ ps -A PID TTY TIME CMD 1 ? 00:00:00 init 2 ? 00:00:00 kthreadd 3 ? 00:00:04 ksoftirqd/0
コンテナとKubernetesによって、ITサービス配信の大改革が起きると予測しています。しかし、一方で、従来のシステム設計の考え方や概念に捕らわれると、日経コンピュータ誌の「動かないコンピュータ」題材を提供する様な事になるかもしれません。 その様な不幸な状況を未然に防ぎ、コンテナがもたらす明るい未来へ進める様に、論文、ホワイトペーパー、ウェブ記事などから学んだ原則や考え方を、「知っておきたいコンテナの基礎知識」として要約します。 物流のコンテナ革命とIT業界のコンテナ 物流業界のコンテナとソフトウェア技術のコンテナを対比して、その価値を再確認してみたいと思います。 物流業界のコンテナによる革命 物流の世界のコンテナは、陸上輸送-海上輸送-陸上輸送という流れで革命的な改革を成し遂げ、輸送コストの削減、重労働からの解放、スピードアップを成し遂げました。 現代人の豊かな生活には、コンテナ革命の
2014年の後半あたりからDocker,Docker Inc.への批判を多く見かけるようになった(もちろんもともと懸念や嫌悪を表明するひとはいた).それを象徴する出来事としてCoreOSチームによる新しいコンテナのRuntimeであるRocketのリリースと,オープンなアプリケーションコンテナの仕様の策定を目指したApp Containerプロジェクトの開始があった. CoreOS is building a container runtime, Rocket 批判は,セキュリティであったり,ドキュメントされていない謎の仕様やバグだったり,コミュニティの運営だったり,と多方面にわたる.これらは具体的にどういうことなのか?なぜRocketが必要なのか?は具体的に整理されていないと思う.これらは,今後コンテナ技術を使っていく上で,オーケストレーションとかと同じくらい重要な部分だと思うので,ここ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く