並び順

ブックマーク数

期間指定

  • から
  • まで

161 - 200 件 / 6952件

新着順 人気順

dockerfileの検索結果161 - 200 件 / 6952件

  • Dockerを用いたGUIアプリケーションの実行 | POSTD

    私はこのところしばらく仕事でVMやコンテナを扱っていましたが、大学のいくつかのプロジェクトでJavaのコードを書かなければならないときは未だにvimを使用せず、新たに本格的なIDEをインストールしなければなりませんでした。これにはいつもイライラさせられていましたが、ついに今週、Dockerコンテナ内でNetBeansを実行できるようになったのです。それによって普段使用しないJavaのコードを書くための膨大な環境をパソコンにインストールしなくて済むようになりました。 Dockerコンテナ内でGUIアプリケーションを実行する場合には、いくつかの方法があり、 X11転送を行うSSH や VNC を使用します。しかし私が発見した最もシンプルな方法は、X11のソケットをコンテナと共有して、直接使用するというものでした。 このアイデアはとてもシンプルで、以下の Dockerfile を開始点として使用

      Dockerを用いたGUIアプリケーションの実行 | POSTD
    • VSCode のリモートコンテナ機能を用いて、あるリポジトリ専用の環境を開発者間で統一する

      概要 VSCode のリモートコンテナ機能を用いると、開発環境を dockerfile の形でコード管理することができます。これにより、開発者が開発に用いる環境をリポジトリごとに統一できます。 VSCodeのリモートコンテナ機能とは コンテナの中に開発環境を押し込んで、その中にディレクトリをマウントして開発するVSCodeの機能です。 リモートコンテナ機能を用いて開発するメリット リモートコンテナ機能を用いて開発することには以下のようなメリットがあります。 local環境を汚さない 複数のプロジェクトで開発するにつれて、local マシンにはそのための様々なアプリ・設定が導入されていきます。この状態には以下のような欠点があります。 導入されたアプリや設定が膨大になって管理しきれなくなり、何のために導入されたか、変更してよい設定なのかが分からなくなる 異なるプロジェクトで必要な設定・アプリ同

        VSCode のリモートコンテナ機能を用いて、あるリポジトリ専用の環境を開発者間で統一する
      • プログラミングに必要なブレイクスルー

        Yoyo Code (Matyáš Racek's blog)より。 ソフトウェアの開発方法を劇的に変えるには、いくつかのブレイクスルーが必要だと感じています。ブレイクスルーといった場合、それは大きなブレイクスルーを意味します。例えば、「構造化プログラミング」のブレイクスルーのようなもので、プログラミングに対する私たちの考え方を完全に変えてしまうようなものです。ここでは、それに関するいくつかの見解とアイデアを紹介します。 グルーコードや定型文を書くのは無駄だ 私が書くコードのほとんどは、面白いことはするわけではなく、定型文か、サブシステム同士を繋ぐための糊のようなものです。この種のコードは、すでに何度も書かれていて、これからも何度も書かれるような気がします。それなのに、なぜまた書かなければならないのでしょうか? 問題は、コードがかなり異なっていることで、通常は既存のコードをそのまま使うこと

        • 【15分で確認】AWSでクラウド設計する時に覚えておきたい設計原則・アーキテクチャ3選 - Qiita

          何となくAWSでクラウド設計をしていませんか AWSを利用する際、多くの方が「設計」というプロセスを簡単に飛ばしてしまう傾向にあります。しかし、クラウド環境の効果的な活用には、適切なアーキテクチャ設計が不可欠です。世の中には、システム設計をする上で指針となる設計原則がいくつかあります。本記事では、以下の3つをピックアップをしてご紹介します。 本記事で取り扱う内容 ■ マイクロサービスアーキテクチャ ■ AWS Well-Architected Framework ■ The Twelve-Factor App 1. マイクロサービスアーキテクチャ マイクロサービスは、独立した小さなサービス群でソフトウェアを構築するアーキテクチャです。これにより、迅速なイノベーションと新機能の迅速な展開が可能となります。一方、モノリシックアーキテクチャは、全てが一つのサービスとして結合され、変更や障害が全体

            【15分で確認】AWSでクラウド設計する時に覚えておきたい設計原則・アーキテクチャ3選 - Qiita
          • 20年でソフトウェア開発の景色はどのぐらい変わったのか? - Qiita

            PySpa統合思念体です。 某チャットで、「今時のOSSのプロジェクト管理とかのベストプラクティスが書いてある本ないかな、陳腐化早そうだしないか」みたいな話題が投入されました。その中で、エキスパートPythonプログラミングとか、Pythonプロフェッショナルプログラミングとかは思い出して紹介したけど、他の人からはShip It、Manage It、Release It三部作とか、達人プログラマーとかも出てきました。 このあたりの源流を辿ると、そういえば今流行ってる開発の源流としてはエクストリームプログラミングの開発系のプラクティスの遺伝子を受け継いでいるのが多いよな、そういえば当時から見て今ってどう変わっているのかな、という話題に。せっかくなので20年前を思い出しつつ、当時と今でどういう風に変わってきたのか適当にまとめてみます。 20年前の状況 XP白本こと、eXtreme Progra

              20年でソフトウェア開発の景色はどのぐらい変わったのか? - Qiita
            • Dockerによる開発環境構築のための概念理解と方法解説 - Qiita

              この記事はNuco Advent Calendar 2023の9日目の記事です。 はじめに この記事ではDockerで開発環境を行うために理解してほしい概念と実際の開発環境の構築手順について解説を行います。大きく分けて、 ・Dockerの概念理解 ・開発環境の構築 これらの章により構成されています。この記事を読むことで、Dockerファイル、イメージ、コンテナ、Docker compose、compose.ymlを理解できるようになることを目指しています。Dockerに触れてみたい、Dockerの理解があやふやという方は参考にしてみてください! 弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。 また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方は、こちらまで。 Dockerとは まず、Do

                Dockerによる開発環境構築のための概念理解と方法解説 - Qiita
              • dockerの公式のGet Startedのドキュメントが今のコンテナ技術の概念をいろいろ学べてお得 - $shibayu36->blog;

                https://docs.docker.com/get-started/をやってみたのだけど、今のコンテナ技術の概念をいろいろ学べてお得だった。 Orientation and setup | Docker Documentation で、コンテナとVMの違いって何?というのが分かる Redirecting…でpythonのwebアプリを動かしながら、Dockerfileやコンテナやイメージの概念を学べる Redirecting…で、docker-compose.ymlとdocker swarmを用いて、コンテナをデプロイするのをやる これでコンテナをスケールさせてデプロイするイメージが分かる Redirecting…で、複数のノードに分散してコンテナをデプロイするのをやる これでコンテナとクラスタ管理のイメージが分かる k8sとかECSとかがやっていることが分かるイメージ Redirec

                  dockerの公式のGet Startedのドキュメントが今のコンテナ技術の概念をいろいろ学べてお得 - $shibayu36->blog;
                • AWS上のコンテナはネットワークをどう利用するのか? ポート番号の扱いとDNSの仕組みを中心に|ハイクラス転職・求人情報サイト AMBI(アンビ)

                  AWS上のコンテナはネットワークをどう利用するのか? ポート番号の扱いとDNSの仕組みを中心に AWS、そしてネットワークの基礎知識は、なんらかのサービスを開発する際に不可欠なものです。本稿では、コンテナを利用してWebアプリケーションを開発するとき、Webアクセスはどのような技術を用いて成り立っており、どういったことに注意する必要があるのか、といった入門的情報をAWSに務める菊池之裕さんに説明してもらいました。 みなさん、こんにちは。アマゾン ウェブ サービス ジャパン株式会社でシニアソリューションアーキテクト ネットワークスペシャリストを務めております、菊池之裕と申します。私は普段、ネットワークに関連したお客さまの技術的な導入支援や課題解決などの業務に従事しています。 読者のみなさんは、ネットワークについての基礎知識をどれくらい持っていらっしゃるでしょうか? 普段、主にWebアプリケー

                    AWS上のコンテナはネットワークをどう利用するのか? ポート番号の扱いとDNSの仕組みを中心に|ハイクラス転職・求人情報サイト AMBI(アンビ)
                  • WSL2とDockerとVSCodeのRemote Containersで最高の開発環境をつくる|はやぶさの技術ノート

                    こんにちは。現役エンジニアの”はやぶさ”@Cpp_Learningです。 WSL2 + Docker + VS Code の Remote – Containers のPython開発環境が最高だったので、構築方法と実践チュートリアルを紹介します。

                      WSL2とDockerとVSCodeのRemote Containersで最高の開発環境をつくる|はやぶさの技術ノート
                    • コンテナ技術を捨て、 WASIを試す

                      こんにちは、NTTの藤田です。 Dockerfileを書くのに疲れた?イメージサイズの縮小で1日が終わった?コンテナの起動が遅すぎる?コンテナ技術と悪戦苦闘する皆様のための新技術、アーキテクチャに依存しないポータブルなバイナリフォーマットと数十μsで起動するsandbox環境を実現する、WebAssembly System Interface(WASI)を試してみました。 WebAssembly System InterfaceとはWASIは、 WebAssembly(WASM)をウェブブラウザ以外の環境で実行するため、 ホストのファイルやネットワークなどの資源に安全にアクセスさせるための仕様です。 具体的には、POSIXに似たAPIが定義されており、WASMのバイナリが、OSが管理する資源にアクセスできるようになります。 WASMは、ネイティブコードなみの速度で動作する、ポータブルなバイ

                        コンテナ技術を捨て、 WASIを試す
                      • Dockerでデバッグ対象のコンテナにツールを入れずにtcpdump/straceなどを使うワンライナー - Qiita

                        はじめに Dockerであんなコンテナやこんなコンテナを動かしてると、なんかうまく動かなくて、デバッグのためにtcpdumpとかstraceなどのツールが使いたくなることが稀によくあります。 そんな時、デバッグ対象のコンテナ内にツールを一時的にインストールしちゃうというのが、まぁ簡単で分かりやすいんですが、デバッグ対象のコンテナを汚すのはできれば避けたいところです。 Dockerのコンテナの分離というのは、結局のところLinuxのリソースの名前空間の分離であるので、逆に同じ名前空間を共有すれば、デバッグ用に立てた隣のコンテナから、デバッグ対象のコンテナのネットワークやプロセスの状態を観察することも可能です。 また、docker buildはDockerfileを標準入力から受け取ることもできるので、ワンライナーにしてデバッグ用のコンテナをシュッと呼び出せるようにしてみました。 TL;DR

                          Dockerでデバッグ対象のコンテナにツールを入れずにtcpdump/straceなどを使うワンライナー - Qiita
                        • DockerCon参加報告 (`docker build`が30倍以上速くなる話など)

                          Docker Meetup Tokyo #24 https://dockerjp.connpass.com/event/93140/

                            DockerCon参加報告 (`docker build`が30倍以上速くなる話など)
                          • Dockerfile自信持って書けてますか?おすすめlintツール 「hadolint」について紹介 - Qiita

                            はじめに Dockerfile、サッと書こうと思ったのに、書き始めたら意外と時間かかったりしますよね。 突き詰めるとすごく奥が深いなと思います。 公式のドキュメントでも、Dockerfileのベスト・プラクティスという形で公開してくれていますが、 これを毎回意識するのは大変です。 また、意識できていたとしても、複数人で管理していると、各個人のスキルレベルによって差が出てしまいます。 そんなときにおすすめのツールを見つけたので紹介します。 hadolintというツールです。 Haskell Dockerfile Linterの略だそうで、Dockerfileの静的解析を行ってくれるlintツールです。 hadolintを使うとこんな利点があります。 build前にシンタックスエラーなどに気付ける (地味にトライアンドエラーしてると時間食うんですよね...) 自然とベストプラクティスに則ったD

                              Dockerfile自信持って書けてますか?おすすめlintツール 「hadolint」について紹介 - Qiita
                            • 技術blogのリンクを投げたらChatGPTが要約して、いい感じに整形してチャンネル投稿してくれるbotを社内Slackに生やしたら捗った話

                              こんにちは、株式会社シグマアイのエンジニアの@k_muroです。 今回の記事は最近導入した「技術blogを良い感じに共有してくれるSlack bot」のご紹介を。 はじめに 技術の進化は止まらない。(真面目な話、AI系の進捗がマジですごいて全然追えない) 毎日のように新しい技術、フレームワーク、ライブラリ、ツールが生まれています。そんな中でエンジニアとして働いていると、この情報の波に疲れを感じること、ありませんか? ありますよね?(脅迫) 実際私もその一人で、この小さな疲れが積み重なって大きなストレスとなることに気づきました。 「新しい技術情報、追いつけるかな?」 「あのブログ記事、後で読もうと思ってたのに、どこいったっけ?」 「チーム全員が同じ情報を持ってるか心配だな。」 そんな日常の疑問や不安から逃れるための一歩として、私はあるSlack botを開発しました。このbotは、送られた技

                                技術blogのリンクを投げたらChatGPTが要約して、いい感じに整形してチャンネル投稿してくれるbotを社内Slackに生やしたら捗った話
                              • モノレポにすべきか、レポジトリを分割すべきか

                                先日 フロントエンドの Monorepo をやめてリポジトリ分割したワケ というブログがバズっていた。そのおかげか、Twitter でもモノレポに関する言及がちょこちょこあった。一家言あるドメインなので書きたい。ただの一家言(a.k.a お気持ち)なのでぜひ皆さんの意見も聞いてみたい。 tl;dr 別に自分はどっち派とかではなく、どっちも選ぶ。強いて言うならリポジトリ分割派で、依存更新がしんどくなったら monorepo 派。 免責 モノレポに対する一家言を書きたいだけであって、内容自体はフロントエンドの Monorepo をやめてリポジトリ分割したワケ と全く関係なく、そのブログで述べられている施策については何も言及しません。ただ一つ言及するとしたら肉の部位がコードネームに採用されているのは良いと思いました。🍖🍖🍖 モノレポにしたくなる状態の前提にあるもの 前提は元記事と同じように

                                  モノレポにすべきか、レポジトリを分割すべきか
                                • Docker: Linuxコンテナを使ってアプリケーションの配置を支援する

                                  サーバアプリケーションの配置はますます複雑になっています。いくつかのPerlスクリプトをコピーするだけでインストールが完了する時代は終わりました。今日、ソフトウエアは多くの種類の要求を抱えています。 インストールするソフトウエアやライブラリの依存物("Python >= 2.6.3とDjango 1.2に依存する") 実行するサービスへの依存("MySQL 5.5とRabbitMQのキュー"が必要) 特定のOSに対する依存("64-bit Ubuntu Linux 12.04でビルドとテストをした") リソースの要件: 利用可能なメモリの最少量("1GBのメモリが必要") 特定のポートへのバインド("80と443を使う") 例えば、比較的シンプルなアプリケーションの配置を考えてみましょう。Wordpressです。典型的なWordpressのインストールでは、 Apache 2 PHP 5

                                    Docker: Linuxコンテナを使ってアプリケーションの配置を支援する
                                  • Docker初学者がやるべきこと3選 - Qiita

                                    この記事はNuco Advent Calendar 2022の22日目の記事です はじめに 対象読者 この記事では Docker初学者の方 これからDockerを学ぼうとしている方 を対象にやるべきことして以下の3つを紹介します。 Dockerの全体像を把握する チュートリアルで基本操作を学ぶ Docker Hubを散策する 自身が初学者だった頃の経験を基になるべく早く効率的にDockerを学ぶためにやるべきことを紹介するので参考にしてもらえれば幸いです。 できるようになること Dockerが何なのか理解できるようになります Dockerを使ったアプリケーション開発に必要な基礎知識が身につきます 記事TOPのクリスマスツリーをターミナルに表示できるようになります 1. Dockerの全体像を把握する まずはDockerが何者であるかを把握しましょう。実際にコマンドで操作する前にざっくりイメ

                                      Docker初学者がやるべきこと3選 - Qiita
                                    • Dockerでnginxサーバー立ててみた。あとDockerの使い方とか。 - Less is Best

                                      Dockerすごい面白そうです。 最近ハッカソンに行ったりして、プロダクション環境へのデプロイ周りですごいはまった。特にお金もない自分は1つのサーバーの中にいろいろとアプリケーションをデプロイしちゃっている訳ですが、もうごちゃごちゃになって触りたくなくなりそう...。新しくサーバーをデプロイしたいけども、既存のサービスまで影響が及ぶ危険性もあり、めんどくさいなー。あと、あとできっと破棄するだろうけど、もとに戻すこともかなりめんどくさいし、そんなことやりたくないしなー。もっとアプリケーション毎に気軽に(そしてお安く)デプロイ出来ればいいのになー。 と思っていた訳ですが、最近Dockerというものを目にしまして。 Docker, Mesos, Sensu等を利用したBlue-Green Deploymentの仕組み 本番環境のBlue-Green Deploymentの仕組みのプロトタイプを作

                                        Dockerでnginxサーバー立ててみた。あとDockerの使い方とか。 - Less is Best
                                      • Google、最適化されたコンテナイメージを生成する「buildpacks」をオープンソースで公開。Dockerfile不要でJavaやGo、Node.jsをコンテナへビルド

                                        Google、最適化されたコンテナイメージを生成する「buildpacks」をオープンソースで公開。Dockerfile不要でJavaやGo、Node.jsをコンテナへビルド Googleは、アプリケーションのコードから最適なコンテナイメージを生成するツール群「buildpacks」(ビルドパック)をオープンソースで公開すると同時に、Google CloudのCloud Run、Anthos、Google Kubernetes Engine (GKE)がこのbuildpakcsに対応したことを発表しました。 We’re launching broad support across @googlecloud for buildpacks, an open-source technology that makes it fast & easy to create secure, product

                                          Google、最適化されたコンテナイメージを生成する「buildpacks」をオープンソースで公開。Dockerfile不要でJavaやGo、Node.jsをコンテナへビルド
                                        • VS Codeをなぜ、使い続けているのか?

                                          前書き この記事を読んでいるエンジニアの皆さんは、それぞれ異なるエディタを使用しているかと思います。読者自身が使用しているエディタの良し悪しについては詳しいと考えているため、私がVS Codeと他のエディタを比較をすることは、限界があります。また、VS Code と他のエディタの機能や快適さを比較できません。 そこで、私が毎日使用している VS Code の良さをアピールすることで、VS Code を使ってもらう機会を作りたいと思っています。 ここで説明しないこと カスタマイズしたキーコンフィグの紹介 ただし、これから紹介する VS Code の機能に好みのキーコンフィグを割り当てることは可能です。 他のエディタとの比較(Vim系 JetBrain系 Helix等の新興エディタ系) 目次 VS Codeとは 毎月のアップデート VS Codeのデフォルト機能 拡張機能(エクステンション)が

                                            VS Codeをなぜ、使い続けているのか?
                                          • RailsアプリをECSで運用するまでにやったこと、これからしていくこと - スパイスな人生

                                            おはようございます。一番よく使うemojiは 👀 (:eyes:) のうなすけです。 さて弊社では、最近社内Railsアプリをひとつ構築しました。それをECSで運用することにしたので、そこに至るまでの経緯、つまづき、これからの課題などなどを記事にしていこうと思います。上の図は現時点での簡単なAWS上での構成図です。 以下、見出しは時系列順でやったことを記録していきます。 社内Railsアプリ、一体どんなもの? ここで新規に構築することになった社内Railsアプリですが、特に凝ったことはしていない単純なRailsアプリです。初めからECSで運用することにしていたので、開発環境も全てDockerで構築しています。Railsのバージョンは5.1.0、Docker imageのFROMにはruby:2.4.1-silmを採用しています。 Docker imageのtagについて developm

                                              RailsアプリをECSで運用するまでにやったこと、これからしていくこと - スパイスな人生
                                            • Docker 初心者は phusion/baseimage-docker を使おう | diaspora

                                              tl;dr Docker 初心者は phusion/baseimage-docker をベースイメージとして使おう。 色々と便利だしハマる機会が減る。 遅ればせながら Docker 入門した 新たにアプリケーションを作る機会があり、週末を利用し遅ればせながら Docker について調べた。 すでにネット上に多くの入門記事がアップされていたおかげで導入自体は簡単にできたが、「まともな」イメージを作成しようとすると壁にぶちあたることになった。たとえば… コンテナに ssh 接続するにはどうすればいいの? syslog 起動してないの? cron は? 解析のために fluentd とか newrelic agent とかも入れたいな… いずれも 1 コンテナ 1 プロセスしか許容されていないという思い込みによるもので、Docker 入門者の多くが通る道なようだ。 公式ドキュメントをちゃんと読め

                                              • Docker を Production で使い続ける理由 | Wantedly Engineer Blog

                                                Wantedlyインフラチームの @koudaiii です。 まずインフラチームでは、「Code wins Arguments」を支えるインフラ = 変化に強いインフラ作りに取り組んでいます。 Code wins Argumentsについては、こちらのインタビューを参照してください。 チームで1時間ミーティングするならコードをかこうという考え方のもと、エンジニアであれば、仮説を考えてあれこれ考えるよりも、プロトタイプを作って検証することや、営業であれば、エンジニアに頼む前に企画書を書いて5社程度の確約をとってきて、これなら行けると思ったらエンジニアに依頼するDocker を Production で使うのはなぜ?Wantedly では、 2014夏頃よりProduction で Docker を使っています。元々 Heroku からサービスをスタートしているので、コンテナ自体はずっと利用し

                                                  Docker を Production で使い続ける理由 | Wantedly Engineer Blog
                                                • 【連載】世界一わかりみが深いコンテナ & Docker入門 〜 その6:Dockerのファイルシステムってどうなってるの? 〜 | SIOS Tech. Lab

                                                  説明だけではわかりにくいと思いますし、私も最初この説明だけでは全くわかりませんでした。なので、実践してみたいと思います。以下のような構成をもとに、実際にOverlayFSを構築します。upperdirはここでは使いませんし、一旦その存在を忘れてもらってOKです。OverlayFSはややこしいので、順を追って説明していきます。 lowerdirに相当する2つのディレクトリ「lower01」「lower02」、upperdirに相当するディレクトリ「upper」、mergeddirに相当するディレクトリ「merged」 を作成します。 期待する動きとしては、lower01ディレクトリにあるhoge.txt(中身はhogeと書いてある)と、lower02ディレクトリにあるfuga.txt(中身はfugaと書いてある)の両方のファイルがmergedディレクトリに表示されるというものです。upper

                                                    【連載】世界一わかりみが深いコンテナ & Docker入門 〜 その6:Dockerのファイルシステムってどうなってるの? 〜 | SIOS Tech. Lab
                                                  • あなたのGoアプリ/ライブラリのパッケージ構成もっとシンプルでよくない? | フューチャー技術ブログ

                                                    2023.10.5追記: Goチームからプロジェクトの目的に応じたディレクトリ構造についてのドキュメントが公式に公開されています。 https://go.dev/doc/modules/layout Goでプロジェクトのフォルダ構成どうしよう、とググると見つかるStandard Go Project Layout。とはいえ、これはかなりコード量を増やしてしまう恐れがありますので、導入する場合のデメリットも考えておく方が良いです。 特に、プログラマーは、最初にみたプログラミング言語のフォルダ構成を親だと思う特性があり、Javaや.NETに影響されるとかなり細かくフォルダを切りたくなったり、package privateなど細かく可視性を制御しようとしたりして、なおかつ「privateのテストってどうすべきなんですか?」とか議論を始めたりもしますが、Go先生によればこれぐらいは1パッケージにフ

                                                      あなたのGoアプリ/ライブラリのパッケージ構成もっとシンプルでよくない? | フューチャー技術ブログ
                                                    • eBPFを使った自動テストツール「Keploy」がすごい

                                                      この記事はKeployのバージョンv2.0.0-alpha53 を前提に執筆しております。 Keployとは KeployはeBPFを利用して取得できるWebアプリケーションの通信に関するトレース情報を元に、テストとそのテストの実行時に利用するスタブサーバーを生成することができるツールとなります。 公式サイトのトップには以下のようなスローガンが掲げられています。 2 minutes to 90% test coverage! テストに苦労した経験のある方は興味を惹かれるのではないでしょうか。 現在まだアルファ段階のプロジェクトですが、GitHubスター数は2683(2024/01/04現在)、CNCF Landscape にも掲載されているなど、一定の注目を集め始めているOSSです。 開発主体はプロダクトと同名のKeployというインド発のスタートアップで、去年GoogleによるインドのA

                                                        eBPFを使った自動テストツール「Keploy」がすごい
                                                      • CircleCI 2.0に移行して新機能を活用したらCIの実行時間が半分になった話 - クラウドワークス エンジニアブログ

                                                        ⠀人 / ⁰⊖⁰ \ オカメインコエンジニアの五十嵐(@ganta0087)です。 CrowdWorksでは、サービスのCI環境としてCirlceCIを利用しています。 今回、CircleCI 1.0から2.0に移行すると同時に、新機能のキャッシュをフル活用したことで、コストを増加させることなくCI実行時間を半分にすることができました。 今回の記事では、CirlceCI 2.0のメリットや、どのようなチューニングを行ったのかをご紹介します。 CircleCI 2.0について CircleCI 2.0は現在ベータ版となっており、「CircleCI 2.0: Beta Access - CircleCI」から申し込むことができます。(試してみたところ個人のリポジトリではすぐに利用できるようです。) 申請したOrganizationのすべてのプロジェクトで突然バージョンが切り替わるわけではなく、

                                                          CircleCI 2.0に移行して新機能を活用したらCIの実行時間が半分になった話 - クラウドワークス エンジニアブログ
                                                        • [速報]次期Docker for Win/Mac、GUIの数クリックで簡単にアプリケーションのコンテナ化と実行が可能に。DockerCon 2018

                                                          [速報]次期Docker for Win/Mac、GUIの数クリックで簡単にアプリケーションのコンテナ化と実行が可能に。DockerCon 2018 サンフランシスコでDockerのイベント「DockerCon 2018」が開幕しました。Docker社にとって、これまで同社の顔であった創業者兼CTOのSolomon Hykes氏が4月に退任を発表して以来、初めての大型イベントです。 1日目の基調講演で行われた最初の大きな発表は、Docker for Win/MacでGUIを用いて数クリックでコンテナ化を実現、より容易かつ迅速にカスタムアプリケーションやミドルウェアをコンテナ化できるようにしたことでした。 これまでDockerを用いてアプリケーションをコンテナ化するにはコマンドラインからDockerコマンドなどを駆使し、Dockerfileなどを理解する必要がありましたが、GUIによってDo

                                                            [速報]次期Docker for Win/Mac、GUIの数クリックで簡単にアプリケーションのコンテナ化と実行が可能に。DockerCon 2018
                                                          • Docker のキャッシュを全力で使いこなそう

                                                            tl;dr 依存パッケージのダウンロードは最初に実行しよう マルチステージビルドは必須と覚えておこう RUN --mount=type=cache を使おう(でも BuildKit を使えるかは確認して!) pnpm fetch も期待大 はじめに みなさん,Docker を使って開発するときに依存パッケージのダウンロードをずっと待ち続けた経験はありませんか?「依存パッケージの追加なんて頻繁に発生しないし,我慢しよう…」と妥協している方も多いでしょう. 頻繁に発生しない?本当にそうですか? 追加ではなくても依存パッケージの更新なんてよく発生するし,ベースイメージを更新することもあります.その度に全部ダウンロードし直しなんて堪ったもんじゃありません.モバイル回線だったら一瞬でギガがなくなっちゃいますよ! ということで,この記事ではキャッシュを活用して依存パッケージのダウンロードが何度も発生し

                                                              Docker のキャッシュを全力で使いこなそう
                                                            • Web アプリケーションを把握するためのコンソール - クックパッド開発者ブログ

                                                              技術部開発基盤グループの鈴木 (id:eagletmt) です。 クックパッドではほとんどの Web アプリケーションが Amazon ECS 上で動く状態となり、またマイクロサービス化や新規サービスのリリースにより Web アプリケーションの数も増えていきました。 個々のアプリケーションでは Docker イメージを Jenkins でビルドして Amazon ECR にプッシュし、Rundeck から hako を用いて ECS にデプロイし、またその Web アプリケーションからは Amazon RDS、Amazon ElastiCache 等のマネージドサービスを活用しています。 このように多くの Web アプリケーションが存在し、また各アプリが別のアプリや AWS の様々なマネージドサービスを利用している状況では、どのアプリが何を使っているのかを把握することが困難になっていきます

                                                                Web アプリケーションを把握するためのコンソール - クックパッド開発者ブログ
                                                              • Dockerイメージのレイヤー構造について - めもめも

                                                                何の話かというと Dockerイメージは複数のレイヤーが重なった形になっています。このあたりを内部構造とあわせて解説します。前提の環境は、CentOS7です。(つまり、ローカルのイメージ管理は、dm-thinが前提。) # rpm -q docker docker-0.11.1-22.el7.centos.x86_64 ローカルにイメージをpullする時の動作 まず、ローカルのイメージをすべて消してキレイな体にしておきます。 # systemctl stop docker.service # rm -rf /var/lib/docker/* # systemctl start docker.serviceCentOSの公式イメージをpullします。この時、4つのイメージ(b1bd49907d55、b157b77b1a65、511136ea3c5a、34e94e67e63a)がダウンロードさ

                                                                  Dockerイメージのレイヤー構造について - めもめも
                                                                • 【docker buildのマニアックすぎる狂宴】Container Build Meetup #1に参加してきた #container_build | DevelopersIO

                                                                  「あぁ、この人たち、すっごい楽しそうにマニアックな話するなぁ」 このイベントに参加しながら、ハマコーずっとそんなことを考えてました。 Container Build Meetup #1 - connpass Docker Buildだけがテーマという、すげぇフォーカスを絞りまくった勉強会だったんですが、絞り方が絶妙だったのか、参加者の熱もアツく質疑応答も盛況だったので、そのレポートをお届けいたします。技術的にも、旬のDocker界隈の話がてんこ盛りで参考になりました。 container buildきたか…!! ( ゚д゚) ガタッ /   ヾ __L| / ̄ ̄ ̄/_ \/   / 登壇者一覧 タイトル スピーカー Better Docker Image 登壇者はおりさの(@orisano)さん。 良いDockerイメージを作るには2つのアプローチがある。 どのように速くするか どのよう

                                                                    【docker buildのマニアックすぎる狂宴】Container Build Meetup #1に参加してきた #container_build | DevelopersIO
                                                                  • インフラ構築をコードで自動化できる「Docker」の魅力――主婦と先生と作家をコンテナ仮想化で両立する阿佐志保さんの生き方

                                                                    翔泳社では11月19日に『プログラマのためのDocker教科書 インフラの基礎知識&コードによる環境構築の自動化』を刊行しました。今回、Dockerが大好きだという著者の阿佐志保さんに、本書の紹介だけでなくDockerに関わる人生観についてもお話をうかがいました(インタビュー内容は10月21日時点のものです)。 家事、育児、講師、執筆の両立 ――よろしくお願いします。最初に、阿佐さんの自己紹介をお願いできますでしょうか。 阿佐:結婚・出産前は、システムの基盤を構築・運用するエンジニアなどをしていました。インフラの設計構築だけでなく、アプリケーション開発標準化や運用設計など、障害やトラブル以外では表に出ることのない地味な仕事です。毎日、朝早くから終電まで働いていました。仕事が好きだったし、非常に優秀なメンバーに囲まれていたのであまり苦ではありませんでした。 分かりやすくいうと「社畜」です。社

                                                                      インフラ構築をコードで自動化できる「Docker」の魅力――主婦と先生と作家をコンテナ仮想化で両立する阿佐志保さんの生き方
                                                                    • 【2020年】CTF Web問題の攻撃手法まとめ - こんとろーるしーこんとろーるぶい

                                                                      はじめに 対象イベント 読み方、使い方 Remote Code Execution(RCE) 親ディレクトリ指定によるopen_basedirのバイパス PHP-FPMのTCPソケット接続によるopen_basedirとdisable_functionsのバイパス JavaのRuntime.execでシェルを実行 Cross-Site Scripting(XSS) nginx環境でHTTPステータスコードが操作できる場合にCSPヘッダーを無効化 GoogleのClosureLibraryサニタイザーのXSS脆弱性 WebのProxy機能を介したService Workerの登録 括弧を使わないXSS /記号を使用せずに遷移先URLを指定 SOME(Same Origin Method Execution)を利用してdocument.writeを順次実行 SQL Injection MySQ

                                                                        【2020年】CTF Web問題の攻撃手法まとめ - こんとろーるしーこんとろーるぶい
                                                                      • Kubernetes導入で実現したい世界とその先にあるMicroservices - スタディサプリ Product Team Blog

                                                                        はじめに CTO兼SREエンジニアリングマネージャーの中野です。ここしばらくの間、CTO/SREエンジニアリングマネージャーとして注力しているKubernetes導入について紹介したいと思います。 今回は、Kubernetes自体がどういうものなのかということより、それをツールとしてどう使い、それでどういう世界を実現したいのかみたいなところを中心に紹介できたらと思います。 まず現在の状況ですが、Quipperでは、大きく分けてスタディサプリの小中高校生向けと日本以外向けの2つのサービスを展開しています。サービスとしての構成はほぼ同じですが、基盤としては別々のAWSアカウントで運営されています。このうち日本国外向け環境では、Kubernetes化がほぼ完了というステータスになっています。目下、スタディサプリも移行中です。 Kubernetes化以前は、Deis(Herokuクローン的なもの)

                                                                          Kubernetes導入で実現したい世界とその先にあるMicroservices - スタディサプリ Product Team Blog
                                                                        • Fluentd / Embulk / Elasticsearch / Digdag を学ぶのに最高な「データ分析基盤構築入門」を読んだ - kakakakakku blog

                                                                          出版されてから少し時間がたってしまったけど,「データ分析基盤入門」を読み終えた.ページ数が多く,持ち運ぶようなサイズではないので,家でちょこちょこ読み進める感じになってしまって,想定以上に時間がかかってしまった. データ分析基盤構築入門[Fluentd、Elasticsearch、Kibanaによるログ収集と可視化] 作者: 鈴木健太,吉田健太郎,大谷純,道井俊介出版社/メーカー: 技術評論社発売日: 2017/09/21メディア: 単行本(ソフトカバー)この商品を含むブログを見る はじめに 目次にも書いてある通り,「データ分析基盤」というテーマで Fluentd / Elasticsearch / Kibana の解説が詳細にまとまっている.さらに付録には Embulk と Digdag の解説もあり,このあたりの技術スタックに興味がある人にとって最高な一冊なのではないかなと思う.また,

                                                                            Fluentd / Embulk / Elasticsearch / Digdag を学ぶのに最高な「データ分析基盤構築入門」を読んだ - kakakakakku blog
                                                                          • 今からDockerを始める人へ!Docker Initがアツい!

                                                                            package main import ( "net/http" "github.com/labstack/echo/v4" ) func main() { e := echo.New() e.GET("/", func(c echo.Context) error { return c.String(http.StatusOK, "Hello, World!") }) e.Logger.Fatal(e.Start(":1323")) } # syntax=docker/dockerfile:1 # Comments are provided throughout this file to help you get started. # If you need more help, visit the Dockerfile reference guide at # https://docs.

                                                                              今からDockerを始める人へ!Docker Initがアツい!
                                                                            • ジュニアエンジニアを脱却するための「コンテナ流儀」 - Uzabase for Engineers

                                                                              こんにちは。ソーシャル経済メディア「NewsPicks」で検索システムを開発しております崔(ちぇ)です。 この記事は、 NewsPicks Advent Calendar 2023 の23日目の記事になります。 qiita.com 昨日ははぐっさんによる「SwiftUIのKeyframeAnimatorでちょっとしたカードアニメーション 〜猫の手を添えて〜」でした! はじめに コンテナ流儀: 必要最低限のものだけで運用する Point1)レイヤーは少ないほどいい TIP:ベースイメージを作る Point2)不要なパッケージをインストールしない Point3)いつ再起動してもいいコンテナを作る Point4)独立したアプリケーションにする TIP:複数のプロセスを実行したい場合もある TIP:環境変数を積極的に使う Point5)フォアグラウンドで実行する 終わりに まとめ 感想 告知 はじ

                                                                                ジュニアエンジニアを脱却するための「コンテナ流儀」 - Uzabase for Engineers
                                                                              • railsをdockerで動かしたい場合の構成はどうするべきか - Qiita

                                                                                はじめに dockerでrailsを動かす場合にどうするのが良いかなーと試行錯誤し、構成も落ち着いてきたのでまとめます。 お試しバージョン 一番最初はとりあえずってことで、railsリポジトリ + railsを動作させるコンテナの組み合わせで試してみました。 Dockerfileの内容 FROM base # rubyインストールに必要なパッケージを用意 RUN apt-get update RUN apt-get install -y --force-yes build-essential curl git zlib1g-dev libssl-dev libreadline-dev libyaml-dev libxml2-dev libxslt-dev # rbenv, ruby-buildをインストール RUN git clone https://github.com/sstephen

                                                                                  railsをdockerで動かしたい場合の構成はどうするべきか - Qiita
                                                                                • CI での Docker Build のベストプラクティスを考えてみた

                                                                                  要約 Docker in Docker な CI では、以下の Docker Build をオススメします。 スクリプト Buildx を使う Buildx を使えないならば、BuildKit + –cache-fromオプションを使う Dockerfile ステージ間の依存を弱くする(依存インストールとビルドを分ける) 中間イメージも軽量化する 不要なキャッシュを削除 ファイル変更差分によりますが、これらにより最大 1/3 へビルド時間を短縮しました。 はじめに 『ホットペッパービューティー』美容クリニックのカウンセリング予約サービスのバックエンドを担当している安達です。 新卒として 4 月に入社して、5 月中旬に美容クリニックに配属され、すでに約 4 ヶ月が過ぎました。 まず、チーム内で自分が活躍できる庭を作りたかったため Docker について詳しくなろうと思いました。 そこで、CI

                                                                                    CI での Docker Build のベストプラクティスを考えてみた