2019年5月24日(金)の発表資料をベースに解説等を加えたバージョンです。 Docker Meetup Kansai #3 https://dockerkansai.connpass.com/event/129089/Read less
![Dockerfileを改善するためのBest Practice 2019年版](https://cdn-ak-scissors.b.st-hatena.com/image/square/853ba0a370633a0bd18d3826ac471bc94db4f4bb/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2Fdockerfilebestpractices19andadvice-190605215154-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
この文章では、私が個人開発で使用しているDockerサーバの管理や、業務でプロジェクトメンバーに開発環境を配布する際に、Dockerfileを書く上で気をつけていることを整理します。 1. Dockerファイルのフォルダには不要なファイルを置かない docker buildは開始時にコンテクスト(現在のフォルダの状態)をDockerデーモンに転送します。具体的には、Dockerfileのあるディレクトリの内容をtarで圧縮し送ります。そのため、Dockerfileのディレクトリに不要なファイルがあるとビルドに余計な時間がかかりよくありません。 とはいえ、プロジェクトフォルダでビルドした成果物をイメージ化するためにDockerfileを含める運用はよくあると思いますので、その場合は.dockerignoreファイルを記述して余計なファイルが転送対象にならないようにします。 .dockerig
Run your application at full speed while syncing your code for development, finally empowering you to utilize docker for development under OSX/Windows/Linux* Developing with docker under OSX/ Windows is a huge pain, since sharing your code into containers will slow down the code-execution about 60 times (depends on the solution). Testing and working with a lot of the alternatives made us pick the
Java 9から含まれているjlinkを使うと、必要なモジュールだけに絞ってコンパクトなランタイムを作る事ができるので、アプリをコンテナで動かす時は便利そうです。 JEP 282: jlink: The Java Linker http://openjdk.java.net/jeps/282 Java Day Tokyo 2018でこれに関するセッションがあり、スライドと動画が公開されています。 jlinkで実際どのくらい小さくできるのか�例が出されているので、おすすめです。 Java in a World of Containers https://www.oracle.com/technetwork/jp/ondemand/online2018-javaday-4489556-ja.html OpenJDK 11でjlinkを試してみたところ、jlinkで生成したランタイムのサイズがめ
こんにちわ 最近dockerを使っていて、 ターミナル上で直感的にdockerを簡単に操作できるツールあったら便利だなと思い、 Goの勉強も兼ねてCUIツールを作りました。 ツール名はdocui(ドックユーアイ)で、docker cuiをの略です。 特に良い名前思いつかず、適当に決めましたが、今となっては気に入っています。 まだdockerコマンドほど機能は充実していないのですが、よく使うコマンドは実装したので公開しました。 興味ある方は使って見て頂ければと思います。 今後は少しずつ改善・機能を増やしていくので、 使ってみた感想などを頂けると助かります。 2018/09/26 追記 docuiの実装について記事を書きました。 アジェンダ コンセプト 導入方法 各パネルの概要 各パネルの操作 image list container list volume list detail docui
Javaアプリケーションを自動的にDockerイメージにビルドしてくれる「Jib」、Googleがオープンソースで公開 Googleは、Javaアプリケーションを自動的にDockerコンテナ化するツール「Jib」をオープンソースで公開しました。 JavaのビルドツールであるMavenもしくはGradleのプラグインとしてJibをインストールすることで、Docker環境の構築やDockerfileなどを記述することなく、ビルドプロセスのなかで構成を読み取り、Dockerコンテナのイメージを生成、Dockerコンテナのレジストリへの登録まで自動的に行ってくれます。 これまでJavaアプリケーションをDockerコンテナ化するには、JavaアプリケーションをビルドしたうえでDocker環境を用意してDockerfileを記述し、そこでDockerイメージを生成するといった手順が必要でした。 Ji
こんにちは。SPEEDA開発チームの鈴木です。 前回はマルチホストでのDocker Container間通信の説明の前段として、Dockerのネットワークが次のようになっているという話をしました。 今回はいよいよ、マルチホストでどうやってDocker Container同士の通信を実現するのかを説明していきます。 はじめに DockerによるContainerのマルチホスト間通信 Port Forwarding Overlay Network 1. Docker Swarm mode 2. 分散KVSとdocker network create -d overlayコマンドを使って自前で構築 3. flannelのようなOverlay Network構築ツールを使う Overlay Networkだけで解決できないこと シリーズ はじめに マルチホスト間でのDocker Container
Ensuring Containers Are Always Running with Docker's Restart Policy Getting a notification that Docker containers are down in production is one of the worst ways to spend your night. In today's article, we'll discuss how to use Docker's restart policy to automatically restart containers and avoid those late-night notifications. What Happens When an Application Crashes?Before we get started with Do
追記 直近の Docker 界隈について Linux コンテナ 参考 Linux コンテナとは Linux コンテナを構成する主な機能 OS リソース毎の Namespace cgroup サブシステム こんなにざっくりでは、Linux コンテナは語れないと思うけど haconiwa haconiwa とは haconiwa で何が出来ると? haconiwa 導入 はじめての haconiwa (1) はじめての haconiwa (2) 〜 コンテナ作成 〜 はじめての haconiwa (3) 〜 コンテナ起動 〜 haconiwa で学ぶ Linux コンテナ .haco ファイル再掲 namespace を弄る前に namespace uts namespace pid 俺は Linux コンテナについてなんにも解っていなかった(まとめ) haconiwa は Linux コンテ
最近、Rails界隈でDocker使い始めました、という話を聞く機会が増えてきたので、自分が開発環境整備用に構築したDockerの設定をまとめておく。 ちなみに、production運用については以前書いたので適当に探してくださいw 結論から書いておくと、volumeをちゃんと活用すればいい、ってだけの話です。 まず、本番用と開発用のDockerfileは分けた方が良い。一つでやろうとするとどうにも無理がでるので。 自分はDockerfileとDockerfile-devというものを用意している。 docker-composeはほぼ必須です。少なくともrailsプロセスとDBだけでも二つは必要だし、Dockerfileを分けてると事故るので。 Dockerfileはこんな感じ。 FROM mybase:ruby-2.3.1-debian RUN echo "deb http://http.
概要 先日Jenkins2がリリースされました。 今はまだJenkins1系を使っているのですが、Jenkins2でビルド時にpipelineを使えるということで、一部のジョブをJenkins2に移行してみました。 移行したジョブの概要 移行したプロジェクトは3のジョブから構成されており、それぞれ以下の様な役割があります。 処理が3つのジョブに別れるためpipelineプラグインをインストールしています。 ジョブその1 ビルド&アーカイブ SpringBootアプリケーションでGradleでビルドしています。 JUnitのテスト結果の保存と、下流ジョブにファイルを渡すためDockefile、Docker操作用のpythonスクリプトをアーカイブしています。 ジョブその2 Dockerイメージのビルド ジョブその1から渡されたDockerファイルを元にイメージをビルドしています。 ジョブその
タグ 1000万@typeAbemaTVairbnbAWAblocklyC++Century21CodeCampCREATOR'S HIVE (クリエイターズハイブ)CSSCTOCygamesC言語d3.jsDeNADIVEINTOCODEDMM英会話dockerDODADTPデザイナーDYMECCESESLintFintechfreeeGMOGMOペパボGoogleGoogleアナリティクスHTMLIE対策illustratorIoTIT企業IT求人ナビJACリクルートメントJavaJavaScriptjoevlogjQuerykakaku.comKLabLINELinkedinMERYMiidasmixiMySQLNHN PlayArtNianticNNTNON STYLEnoteNOVANYLONOB訪問offerboxoptPairsPhotoshopPHPphpmyadminpi
2016 - 07 - 08 DockerfileをLintするにはhadolintが良さそう Docker DockerfileもLintしたいなぁという欲がずっとあって調べてみたらこんなのを見つけた。 github.com Haskell で書かれたDockerfileのLintツールのようです。 インストール Mac ならhomebrewでできます。 $ brew install hadolint Lintしてみる サンプルとして提示されていたDockerfileを使ってみます。内容は以下のようなDockerfile。エラー吐きそうなのが一目瞭然ですね。 FROM debian RUN export node_version="0.10" \ && apt-get update && apt-get -y install nodejs="$node_verion" COPY pack
こんにちは、吉岡(@yoshiokatsuneo)です。 Dockerはシンプルで軽量な仮想環境という特徴から急速に広まっており、paizaでも利用しています。ただし、発展が早いことから、断片的な情報や古い情報などもあります。そこで、ここでは今のDocker(Ver1.13: 2017/1/20更新)について、5分でわかるように簡単にまとめてみます。 目次 Dockerの特徴 コンテナと仮想マシンの違い Dockerの発展 Dockerの構成(5つの要素) Dockerの基本コマンド Dockerコマンド一覧 Dockerの仕組み 考え方 まとめ Dockerの特徴 Dockerは、Linux上のシンプルで軽量な仮想環境(コンテナ)で以下の特徴があります。 早い・軽い OSレベルの仮想化なので、起動は一瞬です。コンテナ間でイメージを共有できるので、コンテナの起動自体ではディスクは消費しませ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く