恥ずかしながら Docker をほぼ触ったことがなかったので、基礎的なことを学びました。 学びながら「こんな絵があったら理解しやすかったなー」と感じていた絵を自分で描きました。 せっかくだから整理して公開したいと思います。 同じ様な方の役に立ったら、とても嬉しいです。
![初心者が絵で理解する Docker](https://cdn-ak-scissors.b.st-hatena.com/image/square/cb2e1e126a208cd69c53d12d0f224ae9fcf07bc6/height=288;version=1;width=512/https%3A%2F%2Fres.cloudinary.com%2Fzenn%2Fimage%2Fupload%2Fs--XT9lllvX--%2Fg_center%252Ch_280%252Cl_fetch%3AaHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL3plbm4tdXNlci11cGxvYWQvYm9va19jb3Zlci9iMzcxYzdjMzhkLmpwZw%3D%3D%252Cw_200%2Fv1627283836%2Fdefault%2Fog-base-book_yz4z02.jpg)
恥ずかしながら Docker をほぼ触ったことがなかったので、基礎的なことを学びました。 学びながら「こんな絵があったら理解しやすかったなー」と感じていた絵を自分で描きました。 せっかくだから整理して公開したいと思います。 同じ様な方の役に立ったら、とても嬉しいです。
初めて知ったときは感動したけど 自分の中で知ってて当然になってしまった小技をまとめました まだこの小技を知らない人に届いてくれるとうれしい Dockerfile RUNを1つにまとめる
Docker Desktop for Windows と VirtualBox を共存できないか試していて、 もっとも納得できていない現象を紹介します。 本記事はトライしたけどできなかった系のお話から始まります。 さらに妥協した方法を模索しているうちに不可解な現象に遭遇しました。 たまたまその不可解な現象の回避方法を発見しましたが、 どうしてそれがうまく機能するのかはわかっていません。 教えてもらったことをきっかけに正しい理解を得ました。 詳しくはこちらの 追加記事 をご確認ください。 TL;DR Docker Desktop for Windows の仮想スイッチ vEthernet (DockerNAT) が生きてると、VirtualBox のポートフォワーディングで 1688 から 2279 の範囲が利用できなくなる ネットワークアダプタ vEthernet (DockerNAT)
本記事は前回の DockerNATが一部のポートを潰しちゃう話 を読んでることを前提に書かれています。 まだの方は先にそちらを読んでからこちらをどうぞ。 TL;DR Windows には「ポート除外範囲」(excludedportrange)という指定した範囲のポートの利用を禁ずる機能がある 実は「ポート除外範囲」には2種類ある エフェメラルポートの動的割当から除外する 特定プログラムが予約し、そのプログラム以外からの利用を禁ずる 2種類とも同じコマンドで確認できるのでややこしい Hyper-Vをインストールする前に「ポート除外範囲」を追加するのが良い コマンド例: > netsh int ipv4 add excludedportrange protocol=tcp startport=2222 numberofports=1 経緯 前回の記事 を公開したところ、 ある方から以下のような
こんにちは、主に検索周りを担当しているエンジニアの伊藤です。 この記事は Enigmo Advent Calendar 2020 の 17 日目の記事です。 みなさんは適切なDockerfileを書けていますか?とりあえずイメージのビルドが出来ればいいやとなっていませんか? 今回は自戒の意味も込めて、改めてDockefileのベストプラクティスについて触れつつ、 そもそもDockerfileを書かずにコンテナイメージをビルドする方法とコンテナセキュリティに関する内容についてまとめてみました。 Dockerfileのベストプラクティス イメージサイズは極力小さくしよう ビルドキャッシュを活用しよう Dockerfileに関する悩みどころ Dockerfileを書かないという選択肢 Buildpack Cloud Native Buildpacks CNBの仕組み デモ CNBのメリット セキ
初めまして。株式会社カミナシPMの@gtongy1です。 Dockerというツール。SRE, Backend, Frontendどの領域のエンジニアも馴染みのあるツールではないでしょうか。 コンテナを利用することにより、インフラの環境を一つの空間に梱包し、その内部で柔軟に様々な環境を作ることが出来ます。 コンテナの実体とはなんなのでしょう? 叡智が詰め込まれたそんな一つの宝箱のように見えます。 「 コンテナ作ってみたくなりませんか? 」 僕と同じように知的好奇心をくすぐられたそこのあなた!コンテナ沼の一歩目を一緒に踏み出してみましょう! 検証環境 Ubuntu 18.04 golang 1.15 Dockerの機能おさらい docs.docker.com まず、ドキュメント内を読み進めてDockerに対する知識を整理します。 DockerはDocker daemonを基幹とし、その呼び出し
最近勉強を始めたコンテナ技術に関する基礎的な知識をまとめました。 [訂正と注釈] p.27-30: 「Deployment」内の「Version: 1」 => 「Version: 2」 p.37: 「終了コードをから」 => 「終了コードから」 p.39: 「HTTPSが利用できない」=> AWS上では、SSL終端するLBがサポートされています。https://kubernetes.io/docs/concepts/services-networking/service/#ssl-support-on-aws p.40: 「ユーザがingress controllerをmaster上にセットアップする必要」 => master上にセットアップしなければならないという制約はありません。例えばGCEのingress controller(GLBC)はPodとして動作します。https://gi
OSC 2020 Online/Fukuokaの資料です。
Go言語の勉強を始めたので備忘録がてら書いてみます。 今回は環境構築のみですが、Go言語でのAPIサーバーの開発編を続編で書けたらいいなと思ってます。 なぜDockerで? Dockerでの環境構築は、様々なメリットが存在します。 どのOSでも簡単に環境構築が出来る ホストOSと開発アプリが隔離されるので安全 デプロイやテストが楽になる ホストOSにインストールするソフトウェアが減る Dockerは最高です。 そもそもDockerとは? コンテナ型の仮想環境を扱うためのプラットフォームです。 コンテナと呼ばれる軽量、高速に動作する仮想マシンのようなものを作成、配布、実行することができます。 詳細についてはさくらナレッジの記事がわかりやすいのでそちらをご覧ください。 さくらナレッジ Docker入門(第一回)~Dockerとは何か、何が良いのか~ Dockerのインストール Windows
Dockerfileとは Dockerイメージの中身を定義する設定ファイルになります. Vagrantを利用した方がある方は,Vagrantfileを思い出して頂くとイメージしやすいかも知れません. 題材 https://github.com/tozastation/gRPC-Training-Golang を使って説明していきます.APIサーバのイメージ作りです. Dockerfileに記載する流れ ベースとなるイメージの指定 プログラムを動作するのに必要なパッケージの導入 ポート開放 プログラム起動コマンド Dockerfile(Multi Stage Build) 以下Dockerfileの例になります. FROMが2箇所あると思います. イメージを2個取得していることになりますが,これには理由があります. golang:latestというイメージの中にはGoの実行環境が入ってる訳だ
この記事について この記事は、Docker Desktopのチュートリアルを和訳したものです。 公式のチュートリアルなので、安心して、かつ効率的に学習することができます。 Docker DesktopからDocker Hub、Docker Composeまで網羅されているので、初学者がDockerに初めて触れたり、中級者が基礎を振り返るのに最適です。 翻訳元のチュートリアルは、2021/10/7時点で最新のものです。長い時間が経過している場合、情報が古くなっている場合がございますのでご注意ください。 読者に誤解を与えない部分は、読みやすさを重視して適宜意訳しています。 DeepL等を使用して推敲は行っていますが、間違っているところやより良い表現があれば、編集リクエストをお願いいたします。 翻訳元 getting-started : https://github.com/docker/get
Dockerの概念や仕組みまではなんとなく理解できるもののDockerfileを書こうとするとスムーズに書けなかったり、そもそものDockerの基礎、あるいはコンテナ技術というものの基礎が抜け落ちていてDocker環境に移行できていないところも多いのではと思い、この記事を翻訳しました。 Source:The Docker Handbook by Farhan Hasin Chowdhury(@Twitter) 本記事は、原著者の許諾のもとに翻訳・掲載しております。 コンテナ化の概念自体はかなり古いですが、2013年にDocker Engineが登場したことで、アプリケーションのコンテナ化がはるかに簡単になりました。 Stack Overflow Developer Survey-2020によると、 Dockerは#1 最も望まれるプラットフォーム、#2 最も愛されるプラットフォーム、および
2019年新卒入社。基盤エンジニアリング本部兼クラウド本部所属のKubernetes大好きエンジニア。自宅ラックマウントサーバ勢。休日はコスプレしたり、バイクに乗ったり、絵を描いたり、サーバメンテしたり、激渋旅館を巡ったりしてます。 こんにちは、IIJの韮塚(にらづか)です。 私は名古屋支社の技術部に所属しており、普段はインフラ中心のSI業務と開発向け社内ツールの管理業務をしています。 みなさん、Kubernetesは触っていますか? いま世の中ではKubernetesが急速に普及しつつあります。 大手クラウドベンダーは独自にカスタマイズしたKubernetesをサービスとして提供しており、多くのWebサービスがその基盤を利用して稼働しています。 中にはYahoo!やサイボウズのように、自社内で独自にカスタマイズしたKubernetesを持っており、その上で自社サービス提供するような会社も
◆ Live配信スケジュール ◆ サイオステクノロジーでは、Microsoft MVPの武井による「わかりみの深いシリーズ」など、定期的なLive配信を行っています。 ⇒ 詳細スケジュールはこちらから ⇒ 見逃してしまった方はYoutubeチャンネルをご覧ください 【5/21開催】Azure OpenAI ServiceによるRAG実装ガイドを公開しました 生成AIを活用したユースケースで最も一番熱いと言われているRAGの実装ガイドを公開しました。そのガイドの紹介をおこなうイベントです!! https://tech-lab.connpass.com/event/315703/ こんにちは、サイオステクノロジー武井(Twitter:@noriyukitakei)です。今回は、第4回シリーズで、WSL2、Visual Studio Code、Docker、Windows Terminalなどの
こんにちは!スタンディングデスクを導入して快適な開発環境と運動不足の両方を解消できるようになったのではと感じている、広告技術部のUT@mocyutoです。 今回は半年ほどEKSを運用して秒間3万リクエストのトラフィックをさばくほどになりました。 秒間3万は広告システムだと割とあるとは思いますが、kubernetesでも運用できているので紹介しようと思います。 対象のEKSで構築したサービスは広告の配信サーバです。 広告配信サーバの要件として、まず50ms以内にレスポンスを返さなければいけません。 構築したk8sのレスポンスタイムの99パーセンタイルは10msほどで返せています。 以下は必要最小限のクラスタの構成図です。 全体像 API 弊社のサーバサイドはほぼGoで作られているので、例に漏れずGoで作られています。 pod構成はAPI、fluentd、envoyの サイドカーパターン です
GitHub を学ぶときに「GitHub Learning Lab」を使うと便利!という紹介記事を6月に書いた.最近 GitHub Actions を使う機会があり,入門するために「GitHub Learning Lab」の「GitHub Actions: Hello World」コースを受講した.今回も非常に良かった! kakakakakku.hatenablog.com GitHub Actions: Hello World 「GitHub Actions: Hello World」は GitHub Actions を学ぶ入門コースとなる.現在はまだ日本語に翻訳されてなく,英語を選択する必要はあるけど,Bot / Issue / Pull Request を活用したインタラクティブな構成になっていて,楽しく学べる.以下のステップを進めていくことになり,最終的には GitHub Acti
◆ Live配信スケジュール ◆ サイオステクノロジーでは、Microsoft MVPの武井による「わかりみの深いシリーズ」など、定期的なLive配信を行っています。 ⇒ 詳細スケジュールはこちらから ⇒ 見逃してしまった方はYoutubeチャンネルをご覧ください 【5/21開催】Azure OpenAI ServiceによるRAG実装ガイドを公開しました 生成AIを活用したユースケースで最も一番熱いと言われているRAGの実装ガイドを公開しました。そのガイドの紹介をおこなうイベントです!! https://tech-lab.connpass.com/event/315703/ こんにちは、サイオステクノロジー武井です。いよいよ佳境に入ってきた連載「世界一わかりみが深いコンテナ & Docker入門 」ですが、今回はDockerのネットワークです。 全7回シリーズでお届けする予定で、今回は第
概要 - 自分でオレオレ hello-world イメージをビルド このチュートリアルは、hello-world イメージを自分でビルドする例を取り上げます。手を動かしながら、Docker イメージの仕組みや性質の理解を深めます。また、効率的な Docker イメージの作成や Dockerfile の活用を目指すための基礎のほか、(主に開発者向けには)マルチステージ・ビルドも学びます。 ポイントは、Docker イメージ(image)とは、Docker コンテナの実行に必要な概念としてのパッケージ(ファイルやメタ情報の集合体)であることです。仮想マシンイメージのように、実体としての1ファイルではありません。 そして、Docker イメージを構成するのは、抽象的なイメージ・レイヤ(image layer)の集まりです。レイヤとは「層」の意味で、Docker は複数のレイヤ上のファイルシステム
概要 Dockerを触っていく上で、何を勉強したら良いかで行き詰まることが多かったので、勉強していて特に役に立ったな、と思ったものを備忘録がてら整理してみます。 対象読者 Dockerに入門したはいいけれど、インフラもLinuxも全然わからん、でも何とかしたい、というレベルの話が中心となっています。 k8sまで踏み込んだり、Dockerをバリバリ実務で使いこなすためのベストプラクティスなどなど、深い部分は対象外としています。むしろ、そういうのがあったら読みたいです。 また、本記事では、Webアプリの実行環境をDockerで構築できるようになるために必要な知識にフォーカスしています。そのため、データベースを利用した簡単なWebアプリをつくった経験があると、Dockerを勉強するモチベーションが高まるかもしれません。 前置き 1年ほど前に、ふとしたきっかけで、Dockerやるかと思い立ちます。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く