並び順

ブックマーク数

期間指定

  • から
  • まで

321 - 360 件 / 509件

新着順 人気順

dockerfileの検索結果321 - 360 件 / 509件

  • VMware、Dockerのような独自の新技術「Project Fargo」発表。1秒以下で仮想マシン起動を実現。VMworld 2014

    VMware、Dockerのような独自の新技術「Project Fargo」発表。1秒以下で仮想マシン起動を実現。VMworld 2014 VMwareはサンフランシスコで開催中の「VMworld 2014」において、急速に普及するコンテナ技術の1つであるDockerとの協業を発表し、積極的にVMware製品群で対応することを明らかにしました。 [速報]VMwareがDockerと協業発表。エンタープライズにおけるコンテナ環境の実現へ。Kubernetesにも参加を表明。VMworld 2014 その一方で同社はDockerのような、仮想マシンをまるでコンテナのように軽量に扱える独自の新技術「Project Fargo」の存在を明らかにしました。その概要がVMware CTO, AmericasのChris Wolf氏がポストしたブログ「VMware and Docker – Better

      VMware、Dockerのような独自の新技術「Project Fargo」発表。1秒以下で仮想マシン起動を実現。VMworld 2014
    • レガシーシステムをDockerコンテナ化する場合に直面した4つの壁 - RAKUS Developers Blog | ラクス エンジニアブログ

      こんにちは。 株式会社ラクスで先行技術検証をしたり、ビジネス部門向けに技術情報を提供する取り組みを行っている「技術推進課」という部署に所属している鈴木(@moomooya)です。 ラクスの開発部ではこれまで社内で利用していなかった技術要素を自社の開発に適合するか検証し、ビジネス要求に対して迅速に応えられるようにそなえる 「技術推進プロジェクト」というプロジェクトがあります。 このプロジェクトで「WEBアプリケーションのDockerコンテナ移行」にまつわる検証を進めているので、その中間報告を共有しようかと思います。 本検証での想定環境 CIに不必要な部分は後回し 既存アプリでコンテナ化の障害になった部分 OSコマンドを利用している ミドルウェアとの密結合 オンライン系とバッチ系の密結合 ひとまず目指す状態 プロセス相乗りの影響 ログが複数出力される まとめ 続きの記事も書きました。 tech

        レガシーシステムをDockerコンテナ化する場合に直面した4つの壁 - RAKUS Developers Blog | ラクス エンジニアブログ
      • Vagrant + CoreOS + Dockerを利用した開発環境セットアップ

        vagrant_coreos_docker.md Vagrant + CoreOS + Dockerを利用した開発環境セットアップ MacOSX + Vagrant + CoreOS + Docker + Ubuntuの環境。 2014年6月11日時点での情報。 Version: CoreOS 343.0.0 Kernel: 3.14.5 Docker: 1.0 技術要素の説明 独断と偏見での説明。 Vagrant - 仮想マシンの作成・起動・停止などを簡単に行うためのツール VirtualBox - 仮想化ソフトウェア CoreOS - Dockerを実行するのに特化した最低限のLinuxイメージ Docker - コンテナ型実行環境を提供するツール Why Docker? いろいろな環境を仮想OSで準備するのはだるい そのためにVagrantがあるが、OSイメージが乱立するとディスクス

          Vagrant + CoreOS + Dockerを利用した開発環境セットアップ
        • nginxをdockerで動かす時のTips 3選

          こんにちは。CTOの馬場です。 最近利用する機会が増えてきたdockerネタです。 nginxを動かすときのTipsを3つ紹介します。 foregroudで起動する dockerではコマンドをforegroundで動かさないとコンテナが停止してしまいます。 nginxはデフォルトはデーモンとして動くので、foregroundで動くように設定しましょう。 nginx.confで設定するならこうです。 daemon off; Dockerfileの起動コマンドで指定するならこうです。 CMD ["/usr/sbin/nginx", "-g", "daemon off;"] 動的な設定を外部化する イメージの中に設定値を入れちゃうのはダサいですよね。 コンテナ起動時に動的に設定したいものです。 dockerの場合は docker run 時に -e で環境変数を指定できるので使いましょう。 do

            nginxをdockerで動かす時のTips 3選
          • Docker Compose入門 (4) ~ネットワークの活用とボリューム~ | さくらのナレッジ

            これまでのDocker Compose入門は、Docker Compoesの紹介に始まり(第1回)、簡単なウェブサーバを起動する方法(第2回)、ネットワークの理解を深める方法(第3回)でした。今回は連載のまとめとして、ネットワークとボリュームの活用によって、1つのサーバもしくはPC上に複数のアプリケーション環境を動かす方法をみていきいましょう。 Docker Composeはプロジェクトごとにネットワークを持つ 前回はDockerのネットワークの扱いを学びました。Dockerコンテナを実行すると、そのコンテナ内のプロセスは、デフォルトで「bridge」という名称の仮想的な内部ネットワークを通して通信を行います。またホスト上のブリッジ(仮想的なネットワーク・スイッチ)を経由して、Dockerが作成する他の内部ネットワークや、ホスト側のインターフェースを通して、インターネットなどの外部ネットワ

              Docker Compose入門 (4) ~ネットワークの活用とボリューム~ | さくらのナレッジ
            • ABEJAの技術スタックを公開します (2019年11月版) - ABEJA Tech Blog

              2021/10/22追記:最新版は下記記事になります!こちらもご一読くださいませ。 tech-blog.abeja.asia どうも、Tech Blog編集長(自称)の緒方(@conta_)です。 よくエンジニアの方にご質問いただく ABEJAってよく聞くけど、実際どんなことやってるのかよくわからない という点をクリアにするために、事業内容と技術視点でのABEJAの取り組みを紹介したいと思います。 ABEJAに興味のある方や、未来の一緒に働くメンバーに読んでいただけると嬉しいです! 割とAIコンサルの会社と思われているらしいので、ちゃんとプロダクト作ってますよ!ということを伝えていきたい ABEJAの事業紹介 ABEJAは2012年から約7年間、機械学習・ネットワークやIoTデバイスを活用したプロダクトの研究・開発・運用を行っています。 様々な産業・業種へ機械学習の適用・運用を培ってきたナ

                ABEJAの技術スタックを公開します (2019年11月版) - ABEJA Tech Blog
              • 1コンテナ複数プロセスはやめておいた方が良い話 - Qiita

                概要 Docker コンテナの原則として「1コンテナ1プロセス」1というものがありますが、あえてこの原則を破りたいときがあるかもしれません。 公式: Run multiple services in a container 有志翻訳: コンテナー内での複数サービス起動 上記ドキュメントのラッパースクリプトを利用する方法には重大な問題があり、本番環境で使用するべきではありません。 (よりによって「本番環境でのアプリ運用」の項目にある) 公式ドキュメントに書かれているのに、死ぬというのはおかしいじゃないか それが罠だという証拠 ちなみに supervisord を利用する方法は問題ありません。 また、コンテナ向けに最適化された s6-overlay2 を利用する方法もあります。 ラッパースクリプトの問題点 プロセスの graceful shutdown が実行されない(プロセスに SIGKIL

                  1コンテナ複数プロセスはやめておいた方が良い話 - Qiita
                • Quarkus: コンテナ上で Java アプリを高速起動する新しい手法のご紹介

                  Docker 環境上で Java のアプリを起動するのは遅いと思っていらっしゃる方は必見!! どうぞ下記の内容をご参照いただき、どうぞお試しください!! 先日、Red Hat から Quarkus (https://quarkus.io) という新しい技術が発表されました。こちらを実際に試して見ましたが、想定通りというか、まさにこれを待っていた!!という技術でした。今後、私の中で注目の技術の一つになりそうです。もし、Docker/k8s 上で Java アプリを動かす方は、こちらの方法をご覧いただき、ぜひ試しください。 Quarkus を簡単にご説明すると、Java のソースコードを GraalVM を利用して Linux の Native バイナリを作成し、その Linux バイナリをコンテナ上で起動することにより、今まで Java アプリの課題であった起動時間を大幅に短縮することができ

                    Quarkus: コンテナ上で Java アプリを高速起動する新しい手法のご紹介
                  • フロントエンドエンジニアなら知っておきたい、JavaScriptのログ収集方法まとめ

                    サーバーサイドに比べて見落とされがちな、フロントエンドのエラーログ収集。JavaScriptのログ収集、確認に役立つ手法、ツール、ライブラリーを総まとめ。 開発進行中も本番モードでの運用時も、ソフトウェアアプリケーションにおいてロギングは大切です。 サーバーを運用しているなら、サーバーサイドの言語選択にかかわりなく無数のライブラリーを利用でき、広範に及ぶストレージメカニズムやログ出力を扱う際の各種ツールも使えます。 しかし、クライアント側アプリケーションとなるとロギングは見過ごされがちで、利用できる手法もかなり限られています。 この記事ではクライアント側アプリケーション、特にJavaScriptを中心としたシングルページアプリケーション(SPA)におけるロギングの実装方法を紹介します。 コンソール エラーとメッセージのロギング方法でもっとも一般的かつ分かりやすいのは、おそらくコンソールの使

                      フロントエンドエンジニアなら知っておきたい、JavaScriptのログ収集方法まとめ
                    • 超基礎からの 速習 Docker (1) - Qiita

                      本稿は、Christffer Noring さん (@chris_noring) の Learn Docker, from the beginning を翻訳し、分かりやすいように少しだけ追記、サンプルコードの実行上の補足等を行ったものです。Docker について教科書的な使い方を実際に実行して確認しつつ、Docker Composeを使ったオーケストレーションの基礎までを導いてくれます。今、Docker で注目されるのは、コンテナ同士が連携する、オーケストレーションです。本稿ではオーケストレーションの最も基礎となる Dokcer Compose までですが、オーケストレーションを活用するための基礎的部分の考え方を実地を以ってしっかりと理解できます。その意味で、原題は「from the beginning」ですが、初心者向けと言うよりも、今現在進行形の技術トレンドをキャッチアップするための

                        超基礎からの 速習 Docker (1) - Qiita
                      • Rails × ECS でオートスケーリング&検証環境の自動構築 - メドピア開発者ブログ

                        マリオカートでカーブを曲がるときに体を傾斜させてしまうCTO室 kenzo0107 です。 今回は 2018/04/02 にリニューアルしたイシコメの Rails × ECS についてです。 イシコメとは? 「イシコメ」は、医師10万人の声でつくるヘルスケアメディアです。 医師と一般の方々をつなげることで、医療情報格差を埋めることを目指しています。 MedPeerの10万人の医師会員に協力いただいたアンケート結果をもとに編集部で記事を執筆し、医師監修の上で配信。多くの医師の声を反映することで、より正しい情報を提供しています ishicome.medpeer.jp リニューアル経緯 リニューアル前は以下のような構成でした。 フロントに Laravel 5 バックに Drupal Docker on EC2 コンテナイメージの S3 でのプライベート管理 Docker がまだ出てきて間もない頃

                          Rails × ECS でオートスケーリング&検証環境の自動構築 - メドピア開発者ブログ
                        • はてなブログをECSに移行してリリース頻度も改善した話 - Hatena Developer Blog

                          この記事ははてなエンジニア Advent Calendar 2022の26日目のエントリです。 こんにちは id:cohalz です。はてなブログでは2022年7月にインフラをAmazon EC2からAWS ECS(AWS Fargate)に移行するプロジェクトが完了しました。 プロジェクトは2021年9月から始まったので約10ヶ月間という大きなプロジェクトでした。 プロジェクト完了までに行ってきたことのうち、特に面白かったところなどをこの記事で実施した順に振り返ってみます。 はてなブログのインフラのこれまで アプリケーションを動かせるようにする ALBを追加する 検証環境を用意だけしておく プロキシの設定埋め込み 証明書の配信 アクセスログを配送できるようにする アクセスログの形式を新しくする EC2でもFirehoseを経由するように タイムゾーンをUTCに統一 FirehoseのLa

                            はてなブログをECSに移行してリリース頻度も改善した話 - Hatena Developer Blog
                          • TinyGoで始める組み込みプログラミング - スイッチサイエンス 開発者ブログ

                            144labの入江田です。 今回TinyGoという素敵なプロダクトを試してみました。 TinyGoとは TinyGoは本家Go言語の組み込み向けのサブセット版。 本家Go言語はPOSIX-OSに対する機能依存が大きく、リッチなランタイムを持っています。その為、本来はOSを持たない組み込み用途には不向きでした。 TinyGoはPOSIX-OSに依存する機能を簡易的な実装で代用しつつLLVM(コンパイラを作る為のフレームワーク)を使って組み込み向けアーキテクチャをサポートするGo言語のコンパイラです。 つまりサポートするCPUアーキテクチャはLLVMがサポートするものを前提にしています。 リポジトリ https://github.com/tinygo-org/tinygo ドキュメント https://tinygo.org/ サポートアーキテクチャ ARMのCortex-M0系 WebAsse

                              TinyGoで始める組み込みプログラミング - スイッチサイエンス 開発者ブログ
                            • Pipenv と Docker を使った開発環境のベストプラクティス - kawasin73のブログ

                              イテレーションの速さがあなたの生産性を左右する。どうも、かわしんです。生産性の高いプログラマって1つ1つの試行が素早い(自動化しているかツールを使っている)ためにものすごいスピードで開発できていると思うんですよね。 さて、最近 Python で開発をしているのですが、世の中の Docker と Pipenv の開発環境を調べてもろくなものがなかったので、自分でテンプレートを作りました。いわゆる「俺の考える最強の Pipenv + Docker 開発環境」というやつです。 リポジトリはこちらになります。 github.com 特徴としては、以下の2つが大きいです。 pipenv install をコンテナ起動時に行うため、docker イメージを作り直す必要がない pipenv shell 相当の仮想環境のアクティベートを自動で行う なぜ Docker + Pipenv なのか Docker

                                Pipenv と Docker を使った開発環境のベストプラクティス - kawasin73のブログ
                              • 仕事でPythonコンテナをデプロイする人向けのDockerfile (1): オールマイティ編 | フューチャー技術ブログ

                                BusterとかStretchという名前が見慣れない方もいるかもしれませんが、これはLinuxディストリビューションとしてシェアの大きなDebianのコードネームです。 Debianバージョンが少し古いStretchの方がちょびっとサイズが小さかったりはしますが、まあ実用的にはサポートが長い方がいいですよね。slimを使ってGCCとかのコンパイラを自前でダウンロードしている記事とかもたまに見かける気がしますが、マルチステージビルドであれば、そんなにケチケチしなくていいのと、パッケージダウンロードは逐次処理なので遅く、処理系が入ったイメージのダウンロードの方が高速です。並列で処理されるし、一度イメージをダウンロードしてしまえば、なんどもビルドして試すときに効率が良いです。また、多くのケースでネイティブのライブラリも最初から入っており、ビルドでトラブルに遭遇することはかなり減るでしょう。 Py

                                  仕事でPythonコンテナをデプロイする人向けのDockerfile (1): オールマイティ編 | フューチャー技術ブログ
                                • Docker イメージを利用したローカル開発環境向けメールサーバ構築のすゝめ|TechRacho by BPS株式会社

                                  ebi です。 弊社では Rails だけでなく、 WordPress 等を利用した PHP 環境、WordPress 等のフレームワークを利用するまでもなく、素の PHP で構成されるページを作成、保守することもあります。 往々にして LP だったり、コーポレートサイトやサービスサイトが中心で、サイト上からのメールの送信を伴う問い合わせフォームがセットとなっていることが多いです。 Rails だとメール送信は Action Mailer を利用して、メール受信は letter_opener 等を利用すればすぐにそれっぽい画面で確認できて便利だな、と思っていたのですが、そこそこ前から Rails 以外のプロジェクトでも、 Docker を利用して letter_opener 相当の環境を手元に用意しているのが便利なので今回はそれを紹介します。 これまでの話 ところで、そもそもこれまではどう

                                    Docker イメージを利用したローカル開発環境向けメールサーバ構築のすゝめ|TechRacho by BPS株式会社
                                  • App Engine VS Cloud Run

                                    Cloud Run CPU 0.08 ~ 8 Core (2nd gen は最小 0.5~) Memory 128 MiB ~ 32 GiB (2nd gen は最小 512MiB~) Deploy App Engine は Deploy (gcloud app deploy) を実行すると Cloud Build が暗黙的に動いて Deploy が行われるが、これがなかなか時間がかかる。 開発環境だと CI でとりあえず main branch に merge されたら、Deploy したりするけど、Deploy を Skip してもよいような時でも CI 回してると Deploy を待つことになって、ちょっとめんどうに感じる。 更にこの仕組みは成果物は Deploy しないと生まれないので、CI と CDを分離しづらい。 Cloud Run は Container Registry a

                                      App Engine VS Cloud Run
                                    • VSCodeとDockerでMacにGolangの開発環境を作成する | DevelopersIO

                                      こんにちは、CX事業本部の夏目です。 Golangは最近人気の言語で手を出そうとは思っていたのですが、環境構築がいまいちよくわからなくてできてませんでした。 (goenvを使ってGolangをインストールするときGOPATHはどうしたらいいとかよくわからなかったのです) 今日はVisualCodeとDockerを使って、Golangの開発環境をMac上に作成しようと思います。 環境構築 事前準備 VSCodeとDockerをインストールします。 Visual Studio Code - Code Editing. Redefined Docker Desktop for Mac and Windows | Docker Version 2.0以上 拡張機能のインストール VSCodeのExtension "Remote-Containers"を使用して開発環境を作ろうと思います。 Micr

                                        VSCodeとDockerでMacにGolangの開発環境を作成する | DevelopersIO
                                      • Docker向けのコンテナをゼロから作ってみよう | さくらのナレッジ

                                        Docker向けのコンテナを公開するDocker Hubでは多数のコンテナが公開されており、これらをベースにして独自のコンテナを作成できる。しかし、新規に独自のコンテナを作成したい場合もあるだろう。今回は、新規にコンテナを作成するのに必要な作業手順を紹介する。 Dockerにおける一般的なコンテナ作成手順 Dockerではよく使われるOS環境を含むコンテナがあらかじめ用意されており、それをベースに独自のコンテナを作成できる。たとえば、『これから始める「DockerでかんたんLAMP環境 for CentOS」』記事では、既存のCentOSコンテナをベースに、独自の環境を構築する手順を紹介している。 しかし、公開されているコンテナではなく、ゼロからコンテナを構築したいという場合もある。たとえばDocker Hubで提供されている公式のCent OSのコンテナでは、ファイル容量削減のためか一部

                                          Docker向けのコンテナをゼロから作ってみよう | さくらのナレッジ
                                        • モノレポの開発環境でDocker ComposeをやめてTaskfileを導入した話

                                          こんにちは、Sally社 CTO の @aitaro です。 マーダーミステリーアプリ「ウズ」とマダミス制作ツール「ウズスタジオ」、マダミス情報サイト「マダミス.jp」を開発しています。 はじめに この記事ではウズの開発当初から利用していた Docker Compose をやめることにした背景についてご紹介します。 Docker Compose は各マシンの開発環境での差異を吸収するというメリットがあり、多くの開発現場で導入されていますが、Docker Composeの抱えているデメリットを勘案して、最終的に一部を残して辞める決断をしました。 Docker Composeの特徴 Docker Composeは、複数のコンテナを定義し、管理するためのツールです。ウズの開発環境では、バックエンド、フロントエンド、データベースなどをそれぞれコンテナ化して、Composeで一括管理していました。こ

                                            モノレポの開発環境でDocker ComposeをやめてTaskfileを導入した話
                                          • Dockerfileの作り方を考え直したらすごく効率が上がった

                                            Dockerfileを作る時、最初は以下の方法でやってました。 Dockerfile書く ビルドする(動かしたいアプリ含め) 起動してみる 動かなかったらDockerfile修正する またビルドして試す こんな感じでしたが、これは非常に効率が悪いです。修正して検証を行う度にビルドが発生してしまい、待ちが発生してしまいます。 どうするか? ベースイメージにアタッチ 動かしたいアプリの実行に必要なコマンドを入れて、成功したらコマンドをメモっていく アプリが動くまで「コマンド実行→成功したらメモ」を繰り返す アプリが動いたらメモったコマンドでDockerfileを作る つまり、いきなりDockerfileを作るのではなく、ベースイメージに入ってコマンドを実行して動作確認をしながらDockerfileに記述する内容を固めていき、最後に1回だけビルドします。 なぜ? Dockerfileに記述するの

                                              Dockerfileの作り方を考え直したらすごく効率が上がった
                                            • AWSネットワーク構成図の手動更新が辛い?よろしい、ならばCloudMapperだ

                                              株式会社ビズリーチで、SREエンジニアとして勤務しているmassです。2017年4月に入社してから、HRMOSというサービスのAWSのインフラを管理したり、アーキテクチャの設計・構築をしたりしています。 今回は、入社してから半年経ったらいつのまにかサービスのネットワーク管理者になっていて、そこで発生した問題と、それを解決するのに非常に役立ったCloudMapperというOSSを紹介したいと思います。 発生した問題 私がネットワーク管理者を引き継いだ段階では、ネットワーク構成図が作成されておらず、以下の問題が発生していました。 ロードバランサーを止められない 用途不明のロードバランサーが存在したため、停止を検討した。 しかし、どのリソースから利用されているか見えず、不用意に停止できなかった。 用途不明なEC2インスタンスの調査ができない AWSからメンテナンス通知が来た対象が用途不明なEC2

                                                AWSネットワーク構成図の手動更新が辛い?よろしい、ならばCloudMapperだ
                                              • Dockerを使いRuby on Railsアプリ、PostgreSQL、Nginxなどのコンテナーをクラウドサービスで動かしてみた - yuumi3のお仕事日記

                                                環境構築 普通に Boot2Docker をMacにインストールしました。Boot2Dockerは ここのブログの中ほどの画像のようにVitualBox上でDockerサーバーを動かし、Macの dockerコマンドがDockerサーバーと通信して動作します。 Dockerサーバーの作成・起動などは boot2docker コマンドで行います。 作成・起動は、 % boot2docker init % boot2docker up これで、dockerコマンドが使えるようになりますが、通信用のDOCKER_HOST環境変数を設定する必要があります。 % export DOCKER_HOST=tcp://192.168.59.103:2375 % docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE nginx latest c

                                                  Dockerを使いRuby on Railsアプリ、PostgreSQL、Nginxなどのコンテナーをクラウドサービスで動かしてみた - yuumi3のお仕事日記
                                                • Docker と SO_REUSEPORT を組み合わせてみる。おそらくその1 - blog.nomadscafe.jp

                                                  SO_REUSEPORTはLinux Kernel 3.9からサポートされている機能で、複数のプロセス/Listenerから同じTCPポートをbind可能にして、Kernelが それぞれのプロセスに接続を分散してくれるという機能です。preforkなサーバはlistenしてからworkerをforkし、それぞれでacceptを行うという手順を踏みますが、SO_REUSEPORTを使えばその手順を踏まなくても複数プロセスから同じポートをListenして処理の並列性をあげたり、hot-depolyが実現できます。 Docker のHost networking機能とSO_REUSEPORTを使って、複数のコンテナから同じポートをbindできれば、コンテナのhot-deployができるんじゃないかと思ったので、試してみました。 SO_REUSEPORTについては以下のblogが参考になります。

                                                  • Docker Buildにおけるリードタイム短縮のための3つの改善ポイント | PLAID engineer blog

                                                    Dockerfile効率化のベストプラクティスを、リードタイム(CI/CDの実行時間)を短縮し開発生産性を向上させる為に行うべき事という観点でまとめました。 1.Docker Daemonへの転送ファイル削減 2.Docker Imageのサイズ削減 3.cacheの有効活用

                                                      Docker Buildにおけるリードタイム短縮のための3つの改善ポイント | PLAID engineer blog
                                                    • 公式チュートリアルで始めるDocker | DevelopersIO

                                                      そろそろコンテナやってみる 社内ではDockerを使った開発やインフラ構築が盛んですが、私はあまり触っていなかったので、今回公式チュートリアルを使って体験してみようと思います。 Dockerってなんですか?という方は、是非過去の記事をご覧になってください。 Developers.IO - タグ - Docker Docker Toolbox まずはセットアップということですが、Docker Toolboxというバイナリが用意されています。これをダウンロードしてインストールすれば直ぐに使えます。 私がインストールしたのは、バージョン1.11.1でした。 コンソールインタフェースとグラフィカルインタフェースが用意されています。 Docker Quickstart Terminal クイックスタート用のアイコンをクリックすれば準備は整います。 bash --login '/Application

                                                        公式チュートリアルで始めるDocker | DevelopersIO
                                                      • いまさらだけどDockerに入門したので分かりやすくまとめてみた - Qiita

                                                        はじめに 今更ながらDockerに入門したのでまとめます。 全てのコマンドの細かいオプションとかまではやりません。 Dockerコマンド体系はv1.13以降の新系です。 ここではクラスタ管理(KubernetesやSwarm)については対象外です。別記事でそのうちまとめます。 ※本記事は投稿された2018年08月08日時点の情報が主になります。 勉強背景 この記事から強い危機感を覚えました。 Dockerは世の中では当たり前の技術。せめて、少し触ってみて基本的な知識くらいは身につけなければ。。。。 TL;DR(5行) Dockerは既存のLinuxカーネル機能から成り立っている イメージを共有していろんな人がいろんなところで簡単にイメージからコンテナを起動できる Dockerコマンドでコンテナを1つ1つ命令する Dockerコマンドめちゃ叩くのはだるいからDockerfileで楽しちゃおう

                                                          いまさらだけどDockerに入門したので分かりやすくまとめてみた - Qiita
                                                        • 無料で脆弱性検査!Dockerfileに4行追加で導入できるmicroscannerを試してみた

                                                          microscannerは、CVEベースでDockerイメージの脆弱性検査をするツールです。簡単に導入できかつ有用なので、導入方法と利用上の注意事項などをまとめました。 先日レポートした「Docker漬けの一日を共に〜Docker Meetup Tokyo #23」は、情報量がてんこ盛りで、学び多くて楽しくてワッセロイだったんですが、その中で、とく(@CS_Toku)さんがLT発表されていた「KubeCon報告とmicroscanner試してみた」のmicroscannerが、面白そうだったので早速触ってみました。 Dockerfileに4行追加するだけで、CVEベースの脆弱性検査が無料で利用でき、既存のイメージビルドに組むこむのもお手軽そうなので、これからコンテナ導入しようと思っている人も、既に本番でガンガンコンテナ使っている人も、一度導入を検討してみてはいかがでしょうか。 __ (祭)

                                                            無料で脆弱性検査!Dockerfileに4行追加で導入できるmicroscannerを試してみた
                                                          • Dockerfileとdocker buildコマンドでDockerイメージの作成

                                                            前回の「ついに1.0がリリース! Dockerのインストールと主なコマンドの使い方」では、Docker EngineのインストールからDockerコンテナーを作成し、Dockerイメージに保存するところまでを紹介しました。 Dockerは開発のスピードが速く、7月3日にはバージョン1.1.0がリリースされています。詳細はブログ「ANNOUNCING DOCKER 1.1.0」を参照してください。 今回は、Dockerコンテナーの構成とDockerイメージの作成を一括で行う、「Dockerfile」ファイルと「docker build」コマンドの利用方法を紹介します。 docker run/docker commitコマンドによるコンテナー作成の限界 前回はDockerコンテナーを「docker run」コマンドで起動し、コンテナー内でソフトウェアのインストールやサービス起動など自由に構成で

                                                              Dockerfileとdocker buildコマンドでDockerイメージの作成
                                                            • Amazon ECSで動かすRailsアプリのDockerfileとGitHub Actionsのビルド設定 - メドピア開発者ブログ

                                                              CTO室SREの@sinsokuです。 Dockerイメージのビルドを高速化するため、試行錯誤して分かった知見などをまとめて紹介します。 AWSのインフラ構成 assetsもECSから配信し、CloudFrontで /assets と /packs をキャッシュする構成になっています。 Rails on ECS デプロイ時にassetsが404になる問題 以前の記事に詳細が書かれているため、ここでは問題の紹介だけしておきます。 Rails等のassetsファイルをハッシュ付きで生成し配信するWebアプリケーションの場合、ローリングアップデートを行うと、アップデート時に404エラーが確立で発生してしまいます。 引用: メドピアのECSデプロイ方法の変遷 Dockerfile 実際のDockerfileには業務上のコード、歴史的な残骸などが含まれていたので、綺麗なDockerfileを用意しま

                                                                Amazon ECSで動かすRailsアプリのDockerfileとGitHub Actionsのビルド設定 - メドピア開発者ブログ
                                                              • Docker と Kubernetes を使って『変化に強いインフラ』を作る | Wantedly Engineer Blog

                                                                WHY『変化に強いインフラ』を作ることで、技術にこだわり続ける環境ができ、ビジネスの変化にいち早くキャッチアップできます。 そのためにどのようにして、『変化に強いインフラ』を作ることが出来るのか模索したものをまとめます。 WHATKubernetes 上にアプリケーションを載せるCI/CD 環境構築GitHub Flow の開発スタイルでを元に QA で自分で書いたコードが確認でき、マージをしてmasterへpushしたら、Produciton へすぐにデプロイするサーバースペックを簡単に変えれる/内部で使われるライブラリ等も変更しやすいようにするDeploy の仕組みを自由に変更できるソースコードは以下です。 Github: koudaiii/jjug-ccc2016fall-devops-demoref. GitHub Flow 『変化に強いインフラ』を作っていく上での定義とルール変化

                                                                  Docker と Kubernetes を使って『変化に強いインフラ』を作る | Wantedly Engineer Blog
                                                                • [旧版]クジラに乗ったRuby: Evil Martians流Docker+Ruby/Rails開発環境構築(翻訳)|TechRacho by BPS株式会社

                                                                  まえがき 本記事は、私がRailsConf 2019で話した「Terraforming legacy Rails applications」↑の、いわばB面に相当します。この記事を読んで、皆さんがアプリケーション開発をDockerに乗り換えるとまでは考えていません(皆さんが以下の動画で若干言及しているのをご覧になっていたとしても)。本記事の狙いは、私が現在のRailsプロジェクトで用いている設定を皆さんと共有することです。それらのRailsプロジェクトは、Evil Martiansのproduction development環境で生まれたものです。どうぞご自由にお使いください。 原文免責事項: 英語版記事は最新の推奨事項に合わせて更新を繰り返しています。詳しくは記事末尾のChangelogをご覧ください(参考: 原文Changelog)。 私がdevelopment環境でDockerを使

                                                                    [旧版]クジラに乗ったRuby: Evil Martians流Docker+Ruby/Rails開発環境構築(翻訳)|TechRacho by BPS株式会社
                                                                  • swagger-merger を用いた大規模API開発における Swagger 運用

                                                                    はじめにこんにちは、Finatext で保険事業のプロダクト開発をしている @toshipon です。今回は以前の Fin-JAWS のイベントで少し紹介させていただいた、我々の現場で取り組んでいる、大規模API開発における Swagger を用いたAPI仕様のドキュメント運用方法について紹介いたします。 概要我々の現場では、API ベースのWeb Application を開発する際に、Swagger を用いて API 設計をしたり、BFFサーバー開発者やフロントエンド開発者とのコミュニケーション手段として活用しています。 ただし、Web Application の規模が大きくなってくると、Swagger の 定義ファイルは肥大化してしまい、メンテナンスが困難になってきます。 今回は、Web Application の規模が大きくなっても耐えうる Swagger 定義ファイルの運用方法を

                                                                      swagger-merger を用いた大規模API開発における Swagger 運用
                                                                    • AbemaTVにPrometheusというモニタリングシステムを導入した話

                                                                      この記事はCyberAgent Developers Advent Calendar 2016 24日目の記事です。23日目はdekatotoroさんの「Apple TV – tvOS入門」でした。 こんにちは、AbemaTVサーバサイドエンジニアのギアです。 去年は新卒のiOSエンジニアとして、「ReactiveCocoaとMVVMモデル」という記事を書きましたが、今年はサーバサイドに関することを書きます。 はじめに この前にAbemaTVはモニタリング・アラートのため、主にStackdriver, Bugsnag, StatusCakeというサービスを使っています。しかし、Stackdriverはデフォルトである程度のGCP (Google Cloud Platform) 上のリソースに対するメトリクスしかありません。各マイクサービス間の通信やサービスのカスタマイズメトリクスなどのアプ

                                                                        AbemaTVにPrometheusというモニタリングシステムを導入した話
                                                                      • チーム開発の開発環境として Docker + Vagrant を選択し続ける理由

                                                                        チーム開発の開発環境として Docker + Vagrant を選択し続ける理由 Docker Advent Calendar 2016 の 25 日目です. Docker アドベントカレンダーとして書いているはずだったんですが、推敲と校正を重ねているうちに Docker というよりは VM とか開発環境とかの話が色濃くなってしまい、主役のツールが Vagrant になってしまいました. 謹んでお詫び申し上げます. 僕が所属する会社の事業の一つに Web/モバイルアプリの SI + 運用があり、その際の Web/API サーバー開発は macOS + Vagrant + VirtualBox (CoreOS) + Docker を社内標準のローカル開発環境(以下、開発環境)としています. 勉強会後の懇親会やコンサルティングを提供する場で良く質問されることの一つに「Docker for Ma

                                                                          チーム開発の開発環境として Docker + Vagrant を選択し続ける理由
                                                                        • `COPY --chmod` reduced the size of my container image by 35%

                                                                          $ podman history vamc19/nomad:latest ID CREATED CREATED BY SIZE COMMENT ... <missing> 36 minutes ago /bin/sh -c apt-get update && apt-get insta... 94.4 MB 374515aec770 36 minutes ago /bin/sh -c # (nop) COPY file:6dbfa42743cc65... 87.7 MB 22cd380ad224 36 minutes ago /bin/sh -c # (nop) LABEL maintainer="Vamsi"... 0 B FROM docker.io/library/ubuntu:21.10 ... The layer created by COPY is 87.7MB, which

                                                                          • (インターン向けに書いた)Pythonパッケージを作る方法 - Qiita

                                                                            この記事は何? Pythonパッケージの作り方を説明する Pythonパッケージを作るときに意識して欲しいことを説明する この記事はポエムです これまでのあらすじ インターンを迎える予定なのですが、彼らはパッケージを作ったことがないそうです。 一方で、企業としては、パッケージ化までしてくれないと、実務に使うまで時間がかかってしまって大変です。 そこで、社内向けに「Pythonパッケージの作り方」という文書を書きました。これをインターンの人に読んでもらっていい感じのパッケージを作ってもらうぜ!という都合の良い目論見です。 しかし、 私もいままでパッケージ化のノウハウをきちんと体系的に勉強したわけではないので、イマイチ不安です。そこで、Qiitaにポエム投稿して、ポエム修正をしてもらおうと思ったわけです。 ところどころ日本語が変なのはご容赦ください。日本語に不自由してます。1 この記事を読む人

                                                                              (インターン向けに書いた)Pythonパッケージを作る方法 - Qiita
                                                                            • kubernetesによるDockerコンテナ管理入門 | さくらのナレッジ

                                                                              また、これらに加えてコンテナの実行やイメージの管理を行うためのDockerや、分散型設定共有サービス「etcd」も必要となる。そのほか、異なるマシン上で稼動しているコンテナ間で通信を行うためにLinuxのブリッジ接続機能や「Flannel」、「OpenVSwitch」といった仮想ネットワーク機構なども利用される。 これらのうち、apiserverやcontroller-manager、scheduler、etcdについてはクラスタの管理を行うマスターサーバーで実行されるコンポーネントとなる。また、proxyやkubelet、dockerはコンテナを稼動させる各ノード(minionとも呼ばれる)上で実行されている必要がある。 マスターサーバーとノードを分けた一般的な構成は、次の図2のようになる。なお、kubectlについてはマスターサーバー上でも、別のクライアント上でも実行が可能だ。 図2

                                                                                kubernetesによるDockerコンテナ管理入門 | さくらのナレッジ
                                                                              • Go言語で基本的なCRUD操作を行うREST APIを作成 | DevelopersIO

                                                                                Javaのエンジニアだった私がGo言語でREST APIを作る上で学んだことをまとめています。 プロジェクト構成、単体テスト、Dockerイメージの作成など実際にREST APIを開発する上で必要だと思われる要素を盛り込みつつサンプルプロジェクトを作成していきます。 はじめに Javaのエンジニアだった私がGo言語でREST APIを作る上で学んだことをまとめています。 プロジェクト構成、単体テスト、Dockerイメージの作成など実際にREST APIを開発する上で必要だと思われる要素を盛り込みつつサンプルプロジェクトを作成していきます。 今回はできるだけ外部ライブラリやフレームワークを使わずにGo言語の標準機能のみで開発しました。 これからバックエンドにGo言語を使用することを検討されている方の参考になれば幸いです。 ※この記事は既にGo言語の開発環境をセットアップ済みで基本的な文法を学

                                                                                  Go言語で基本的なCRUD操作を行うREST APIを作成 | DevelopersIO
                                                                                • AWS FargateではなくECS on EC2を選ぶメリット〜コスト編〜 - Uzabase for Engineers

                                                                                  このブログは NewsPicks Advent Calendar 2022 1日目の記事です。 qiita.com NewsPicksのSREチームでリーダーをしている安藤です。 NewsPicksに入社して1年が経ちましたが、最近は円安により親の顔よりもAWS Cost Explorerを見る毎日です。 ということで、コストの話をしていきたいと思います。 NewsPicksでのコンテナ移行について ECS on EC2とは? コンテナの実行環境としてFargate or EC2を選択する時の評価基準 実際、Fargateはどれだけ割高なの? CPU性能の比較 コンピューティング料金の比較 パフォーマンスに対するコスト コストに対して、マネージドサービスのメリットが上回るか 終わりに NewsPicksでのコンテナ移行について NewsPicksでは、Amazon ECSによる全面コンテナ

                                                                                    AWS FargateではなくECS on EC2を選ぶメリット〜コスト編〜 - Uzabase for Engineers