Docker Desktopは普段使いのマシンでコンテナーでアプリケーションを実行することができるソフトウェアで、Dockerのサイトからダウンロードして使うことができます。 開発中のアプリケーションのテストとか、手元の環境でソフトウェアを動かしてみたい時に便利です。VSCodeとの連携もバッチリで、VSCodeコードでコーディングしたアプリケーションをDockerコンテナーで実行するDevContainerにも対応しています。最近のバージョンでLinux Desktop版も提供されるようになったので、もちろんパソコンは必要ですが、Linux DesktopにDocker Desktopをインストールすれば、ほぼ無料でコンテナーベースのアプリケーション開発が可能になります。 良い世の中になりました。 そんな便利なDocker Desktopですが、Dockerの方針変更で次の条件に当てはま
はじめに 先日、JakartaOne Live Japan 2022というイベントで登壇させていただく機会を頂きました。 QuarkusやHelidonのような新しめのEEフレームワークがこれまでのPayaraやWebLogicとどう違うのか? CloudRunのようなサーバレス環境でMicroProfileのどの機能が効果的に働くのか? という点を最近のWeb開発周りのトレンドと絡めながら話ました。上記のようにアーカイブ動画も公開されていますが、せっかくなのでQuarkusがサーバレス環境で実行に最適化されるまでの周辺事情等をまとめたいと思います。Javaだけに留まらず最近の環境事情の整理にも役立つかと思います。 TL;DR Quarkus/Helidonは軽量で高速な新しいEEフレームワーク コンテナや、サーバレス、クラウドネイティブなど最新のトレンドに基づいた設計 GCPのCloud
2022年に注目しておきたいCSSの新機能を紹介します。いくつかの機能はすでに1つ以上のブラウザでサポートされており、他のブラウザもそれに続く予定です。 ビューポートではなく親コンテナに応じてスタイルを定義できる「コンテナクエリ」、詳細度とスタイルの順序を明示できる「カスケードレイヤー」、相対色構文が追加された「カラー関数」、Safariの100vhを解決する新しいビューポート単位「svh」など、今すぐにでも使用したい機能ばかりです。 Photo by Jr Korpa on Unsplash CSS in 2022 by Bramus 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに 注目の新機能(クロスブラウザでサポート) まだ先の新機能(実験的/シングルブラウザでサポート) 停滞している新機能 Safariは「新し
米Mirantisは、軽量かつシングルバイナリで、インストールや運用も簡単なKubernetesのディストリビューション「k0s」をオープンソースとしてリリースしました。 新しい Kuberentes distro, #k0s が OSSで公開されました! 軽量、ワンバイナリ、Intel/ARM対応、アップデートも簡単! チェックしてみてください!https://t.co/B4gBUPWau2 — Mirantis Japan (@Mirantis_JP) November 13, 2020 対応するOSはLinuxとWindows(今後リリース予定)。プロセッサはIntelとARMに対応します。 軽量かつ簡単に導入できて運用も容易 k0sは、「100% upstream vanila Kubernetes distro」(100%純正で色付けのないKubernetesディストリビューショ
こんにちはコカコーラ大好き、カジです。 7/3に行われたDevelopers.IO 2020 Connect で、「基礎から応用までじっくり学ぶECS Fargateを利用したコンテナ環境構築」というタイトルで、お話しさせていただきました。 ライブに来ていただいたみなさま、ありがとうございました! お客様や自社の開発部門から、急に「次のシステムはコンテナ使いたい」と言われ、コンテナ実行環境を構築しなければならない状況に直面し、慣れない部分が多いと思います。 AWSにはコンテナ向けのサービスは複数あり、少人数でも運用しやすいのがECS Fargateです。そんなECS Fargateを中心に、実用的なコンテナ実行環境をどのように構築すれば良いのかについて解説しました。 目次 なぜコンテナ? なぜECS Fargate? AWSコンテナ関連サービス コントロールプレーンのざっくり比較 データプ
CTOのid:motemenです。2021年8月から9月にかけて開催した「はてなリモートインターンシップ2021」も無事に終了しました。 今年のインターンシップは下記のエントリーで発表したように、前半の1週間が講義、後半の2週間は開発を実践する2部構成で、ともにオンラインで実施しました。 はてなリモートインターンシップ2021のカリキュラムを発表します! このうち講義パートは、Web技術に関するエンジニアリング講義とブートキャンプ、そしてエンジニアリング以外の領域をとりまぜて実施しました。この記事では、それぞれの講義で使用したスライド資料を公開するとともに、内容を簡単に紹介します。 エンジニアリング講義で使用したスライド資料 Web API ─ REST GraphQL gRPC Webサービスインフラ入門 コンテナ技術とDocker Kubernetesの仕組みとハンズオン マイクロサー
Windows 10 Homeでも使える本物のDockerの提供開始 DockerのコンテナリポジトリであるDocker Hubでは、歴史的な経緯からWindows ServerやIISが提供されている。本物のDocker環境「Docker Desktop for Windows」との関係などを整理する。 コンテナ仮想化を用いたアプリケーションの開発/実行環境である「Docker(ドッカー)」を試したことはあるだろうか。Windowsユーザーの場合、Hyper-VやVMwareといった仮想マシン環境は使ったことがあっても、Dockerを普段から利用しているという人はまだ少ないだろう。手元のWindows環境で試してみたかったけれど、「何やら複雑そうで手が出なかった」という人もいると思う(これはWindows OS上のDockerのサポートが二転三転したことも一因だろう。詳しくは後述)。 し
全国の nginx 職人のみなさま、こんにちは。野島(@nojima)です。 私の所属するYakumoプロジェクトでは、nginx を Go と Docker によってユニットテスト1しています。 手元で簡単に実行でき、ブランチへのpushのたびにCIでテストされるので、非常に便利です。 この記事では、このnginxのユニットテストについて紹介してみたいと思います。 背景 nginx は極めて柔軟なロードバランサであり、プロダクション環境ではその柔軟さを生かして多彩な役割を担っています。 我々の nginx は、ユーザーからのリクエストを AP サーバーに振り分け、アクセス制限を行い、リクエストをリダイレクトし、HTTPヘッダを付与したり削ったりしています。 しかし、nginx は便利な反面、その設定は極めて複雑になり、読解したり変更したりするのが難しくなっています。 そこで、nginx
今押さえておくべき知識をアップデートし、ノウハウを共有し、さらなるスキルアップを実現する場として開催されている、AWS で最も Developer に特化したカンファレンス「AWS Dev Day Online Japan」。ここでSr. Product Developer Advocate, Elastic Containersの原氏が登壇。まずは、コンテナワークロード超入門として、コンテナのデプロイ時とクラッシュ時に起こることを紹介します。全3回。 自己紹介 原トリ氏:オーナーシップの塊、トリです。本日はタイトルにあるとおり、アプリケーション開発者はAmazon ECSあるいはKubernetesといったコンテナオーケストレータのことを、どこまで知るべきかについて話します。もともと「どこまで知ればいいのか」というタイトルでしたが、思いが強すぎて「知るべきか」に変わりました。 あらためて
要約 Docker in Docker な CI では、以下の Docker Build をオススメします。 スクリプト Buildx を使う Buildx を使えないならば、BuildKit + –cache-fromオプションを使う Dockerfile ステージ間の依存を弱くする(依存インストールとビルドを分ける) 中間イメージも軽量化する 不要なキャッシュを削除 ファイル変更差分によりますが、これらにより最大 1/3 へビルド時間を短縮しました。 はじめに 『ホットペッパービューティー』美容クリニックのカウンセリング予約サービスのバックエンドを担当している安達です。 新卒として 4 月に入社して、5 月中旬に美容クリニックに配属され、すでに約 4 ヶ月が過ぎました。 まず、チーム内で自分が活躍できる庭を作りたかったため Docker について詳しくなろうと思いました。 そこで、CI
4つのバッチ処理・定期実行方式の詳細情報それぞれのバッチ処理・定期実行方式について詳細を見ていきます。 EC2について使用するAWSサービスEC2 処理概要Linux系OSで用いられる定時実行機能であるcronのコマンドを使用する メリット昔からよく使われているcronの知識が使える デメリットEC2インスタンスを起動しておく必要があり、使っていない時間もコストがかかる 障害に弱い。EC2サーバに障害があると終わる サーバが複数になると管理が大変 SQS×ECS使用するAWSサービスEventBridge SQS ECS 処理概要EventBridgeでキューを生成。ECSコンテナでキューを取得して実行する メリットECSを起動しておくため、コンテナの起動時間を要さない。 デメリットEventBridgeでキューを生成するが、EventBridgeはまれに1 つのイベントに対して複数回トリ
NTT Tech Conference 2022 での「Dockerからcontainerdへの移行」の発表資料です https://ntt-techconf.connpass.com/event/241061/ 訂正: P2. . 誤: ``` Ship docker run -it --rm alpine Run docker push ghcr.io/ktock/myalpine:latest ``` 正: ``` Ship docker push ghcr.io/ktock/myalpine:latest Run docker run -it --rm alpine ``` Read less
本記事は通信業界アドベントカレンダー Advent Calendar 2021の20日目の記事です。 はじめに 通信業界ではNFVをはじめとして、ネットワーク仮想化の検討が行われています。最近では要素技術にコンテナも加わり、DockerやKubernetesを使う機会も出てきました。ネットワーク仮想化を進めてきた背景からすると、業界内では当然の流れだと思いますが、通信業界以外の方に「Kubernetesを触っています」と話すと驚かれるので、自分の勉強もかねて通信業界の仮想化とKubernetes の活用までの流れを簡単にまとめてみました。 ネットワーク仮想化の歴史 VLAN 1990年代に登場したネットワーク仮想化の先駆けの技術 物理スイッチを複数の論理的なスイッチに分割して利用 設定変更のしにくさや障害発生時の切り替えに時間がかかるなどの課題 SDN: Software Defined
概要 Dockerの本番環境で秘密情報を使う際に、環境変数を使うことは推奨されてません。 秘密情報を扱うには、コンテナオーケストレーションのsecret supportを使うことが推奨されてます。 Docker Composeには秘密情報を扱うために、secretsがあります。(Docker ComposeのsecretsはDocker Swarmと併用することが前提の機能です) 環境変数で秘密情報を扱う時の問題点 秘密情報を扱う時に、よくある方法として、環境変数を使う方法があります。 (この記事において、秘密情報とはパスワード、APIキーを想定します。) しかし、Dockerのドキュメントhttps://docs.docker.com/get-started/07_multi_container/ には While using env vars to set connection set
latestタグや書き換えるためのタグ(develop, stagingなど)を使って、本番で運用するのはやめましょう。 コンテナイメージのキャッシュ状況やリリースフローによっては予期しない形で 予期しないバージョンが本番で起動する可能性があります。 本記事では、どのプラットフォームやツールで発生したかについては記載しません。 本題はそこではないのと、そもそも運用が間違っているので 記述しても余計な枝葉になるからです。 この記事ではどういうことが起きたか、について書きます。 どういうことが起きたか サービスで、dockerイメージのlatestタグを使って本番運用していた。 全コンテナをgraceful restartしたようだ。(つもりだったが・・・) 別の作業中、管理画面の表示がおかしくなっているという話が出てきた。 そこで調べてもらったところ、なぜかリリースしたはずの機能が正常に機能
初めに この記事は技術進化が5年前くらいで止まっている環境で働く私が、モダンな技術に触れる為に学習したことを記録したものです。 暇潰しに読んでいただければ幸いです 本記事では、 Windows10 Home + WSL2の環境に、Dockerをインストール Golang + GitがインストールされているコンテナをDockerfileで立ち上げる VSCodeからコンテナに接続してHello World の3つを行います。 Dockerとは? DockerはOracleVM等と同様、仮想環境を提供するソフトウェアです。OracleVMのようにOS全体を仮想化せず、OSの一部とアプリケーションの実行環境をまとめたコンテナと呼ばれる仮想環境を提供します。 コンテナはDockerfileというテキストファイルを元に作成され、Dockerfileが同一であれば、どのOSでも同一の環境を作ることがで
スマートキャンプ、エンジニアの入山です。 弊社で技術的挑戦の意味も込めて始めたKubernetes(k8s)も、小規模ながら運用を開始して1年以上が経ちました! 現在では、k8sでのインフラを採用したプロダクトが無事に本番リリースを迎え、ユーザーが本番稼働を行うまでになっており、躓きながらも少しずつ運用知見が溜まってきています。 今回は、k8sを実際に運用してわかった3つの知見を紹介したいと思います! PodのNode配置が偏る 解決策 ローリングアップデート時にダウンタイムが発生する 解決策 Pod削除時にコンテナによってプロセスが終了するタイミングが異なる 解決策 最後に PodのNode配置が偏る k8sではPodを新規作成する場合に、kube-schedulerが各ノードのリソース使用状況等から判断した最適なNodeへスケジューリング(配置)を行います。 しかし、このスケジューリン
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く