製品 Docker Desktopアプリケーションのコンテナ化Docker Hubコンテナー イメージを検出して共有するドッカースカウトソフトウェアサプライチェーンの簡素化Dockerビルドクラウドイメージのビルドを高速化Testcontainers デスクトップ 実際の依存関係を持つローカルテストTestcontainers クラウド クラウドで制限のないテスト 製品ロードマップを見る開発者向けのその他のリソース
![Docker ビルドチェックの紹介: ベストプラクティスによるDockerfileの最適化 | Docker](https://cdn-ak-scissors.b.st-hatena.com/image/square/6677e4f527382bb1e4ecf31b28ac56edb0b7fa1e/height=288;version=1;width=512/https%3A%2F%2Fwww.docker.com%2Fja-jp%2Fwp-content%2Fuploads%2F2023%2F09%2Fsquare_how-to-set-up-the-weaviate-vector-database-on-docker-1024x1024.png)
本記事は「珠玉のアドベントカレンダー記事をリバイバル公開します」企画のために、以前Qiitaに投稿した記事を一部ブラッシュアップしたものになります。 はじめにみなさん、docker composeを利用しているでしょうか? 複数のdockerコンテナをまとめて立ち上げたり、環境変数を定義できたり便利ですよね。 この記事ではある程度docker composeを利用している方向けに私が便利、便利そうと感じたdocker composeの機能を挙げてみました。 docker compose cli v2を利用docker-composeではなく docker composeコマンドも利用可能になっています。 Docker Desktopでは v3.4.0から利用可能で、基本的にはコマンドの互換性あります。 ファイル監視による自動更新docker compose 2.20.0からCompose
Red Hat、ローカルマシンにコンテナとKubernetes環境などを構築する「Podman Desktop 1.0」正式リリース Red Hatは、ローカルマシンにLinuxのコンテナとKubernetes環境を手軽に構築できる「Podman Desktop 1.0」を正式リリースしました。 Windows、macOS、Linuxに対応し、デスクトップアプリケーションからコンテナエンジンのPodman、Docker、OpenShift Localなどを簡単にインストールでき、最新の状態に保つことができます。 コンテナの実行やKubernetesの操作など Podman Desktopの主な機能は以下の通り。 コンテナとポッド関連 コンテナとポッドのビルド、ラン、マネージ、デバッグ Kubernetes上もしくはKubernetesなしでのポッドの実行 内蔵のターミナル機能でコンテナへの
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.
はじめにSHIFT DAAE の shinagawa です。表題の通りNode.jsで作成したコンテナのイメージサイズの軽量化に挑戦しました。 背景近年の多様化・高速化するビジネスに対応するITシステムの構築を実現する「クラウドネイティブ」の構成要素の一つとして 「コンテナ」という仮想化技術が存在し、当部門でも活用を進めております。 このコンテナイメージを作成するにはアプリケーションコードやライブラリ・モジュールなどの依存物、ランタイム等を1つのイメージとして組み立てて作成しますが、 この構成要素が増えるとイメージサイズが肥大化し保管時のストレージのコストの増加やイメージの転送、環境への展開に時間がかかることになります。 従ってイメージのサイズを削減することは、これらの点を改善することにつながります。 ここではネット上で紹介されている、あらゆる打ち手を組み合わせてコンテナイメージの軽量化に
概要 VSCode のリモートコンテナ機能を用いると、開発環境を dockerfile の形でコード管理することができます。これにより、開発者が開発に用いる環境をリポジトリごとに統一できます。 VSCodeのリモートコンテナ機能とは コンテナの中に開発環境を押し込んで、その中にディレクトリをマウントして開発するVSCodeの機能です。 リモートコンテナ機能を用いて開発するメリット リモートコンテナ機能を用いて開発することには以下のようなメリットがあります。 local環境を汚さない 複数のプロジェクトで開発するにつれて、local マシンにはそのための様々なアプリ・設定が導入されていきます。この状態には以下のような欠点があります。 導入されたアプリや設定が膨大になって管理しきれなくなり、何のために導入されたか、変更してよい設定なのかが分からなくなる 異なるプロジェクトで必要な設定・アプリ同
概要 2021年の後半にDocker Compose V2がリリースされました Docker Compose V2はCompose Spec[1]に準拠しているため、docker-compose.ymlもその仕様に則った書き方ができるようになっています services: app1: image: awesome/webapp configs: - my_config secrets: - server-certificate app2: image: awesome/database extends: service: app1 configs: my_config: file: ./my_config.txt secrets: server-certificate: file: ./server.cert services: app1: configs: - source: my_co
この記事はPRを含みます。 概要 背景 移行 Docker Desktopのアンインストール Rancher Desktopのインストール Kubernetesクラスタの無効化 宣伝 まとめ 概要 Rancher Desktopがcontainerdに加えdockerにも対応したのでDocker Desktopから乗り換えてみました。簡単な用途だとdockerコマンドがそのまま使えるので特に困っていません。 背景 2021年9月にDocker Desktopが有料化されました。移行期間として2022年1月31まで引き続き無料で利用できましたが、それもついに終了しました。 www.docker.com ただし、個人利用もしくはスモールビジネス(従業員数250人未満かつ年間売上高1000万ドル未満)、教育機関、非商用のオープンソースプロジェクトでは引き続き無料で利用できるという条件でした。no
はじめに こんにちは、Google Cloudでオブザーバビリティを担当しているものです。Cloud Operations suiteをよろしくおねがいします。(宣伝終わり) この記事はGo Advent Calendar 2021 その1の22日目の記事です。昨日は @sago35tk さんの「ESP32 向けに TinyGo をセットアップする」でした。TinyGoのコアな情報を日本語で教えてくれるtakasagoさんには本当にいつも感謝しています。 さて、今日はGo製のアプリケーションをdockerlessでコンテナ化できるkoの紹介をします。koは本当にイチオシのツールで、みんなに使ってもらいたいのでぜひ使ってください。 github.com DockerによるGo製アプリのコンテナ化 まず最もポピュラーと思われるDockerを用いた場合のGo製アプリケーションのコンテナ化の方法に
09/21 追記 docker-machineのコマンドがまたまた動かない状態になっていたので最新バージョンで動くように更新しました。 05/21 追記 docker-machineを作成するコマンドが動かない状態になっていたので最新バージョンで動くように更新しました。 02/20 追記 xdebugを止める設定について追記しました。#xdebugで接続したい問題 TL;DR 環境を作るのは #環境を作ってみる #対処法 #localhostで接続したい問題 に記載してあるコマンドを順に実行するとできます。 歴史 docker for macが遅い。。。 私が初めてdocker for macを触った時のことです。 ファイルIOが遅い!!画面遷移が遅い!!!mysqlのデータの書き込みページが遅い!!!!!! 自分のマシンではこの程度かと思っていたのですが、実際に自分が作った機能がローカル
Docker Desktop for Macに依存しないminikube + hyperkitによるDocker環境の構築 Docker Desktopが有料化しました。個人や非商用のオープンソースの開発では引き続き無償で利用できます。Dockerを便利に利用している身としては、Docker社の利益に貢献したいという気持ちはあるものの、「無償のまま」利用し続ける方法を模索したくなるものです。そこで、Mac(Intel)版で引き続き、Docker環境を無償のまま利用し続ける方法を模索してみました。 Docker Desktopが有料化へ 従業員数250人未満・年間売り上げ1000万ドル未満の組織などは引き続き無料 - ITmedia NEWS Docker Desktop for Macのアンインストール まずは、Docker Desktop for Macをアンインストールします。Home
Today, the community was shocked by the sudden news that Docker Desktop for Mac/Win is no longer free [-as-in-beer] for “professional use in larger businesses”. But we have a free, libre, and open source alternative of Docker for Mac: containerd & Lima. $ brew install lima $ limactl start $ lima nerdctl run -it --rm alpine(NOTE: ARM Mac requires installing a patched version of QEMU, see Lima docum
■ Docker Desktop から podman に変えた 朝起きたら Docker Desktop が 4.0 になって、物々しい感じの表示が出たので調べてみたら、営利利用は課金してねということになったっぽい。 https://www.docker.com/blog/updating-product-subscriptions/ 最近は個人の開発でしか使ってないし OSS 利用とは言えるけど、会社関連で一切使わないということもないよなあという感じだったので、macOS からえいっとアンインストールしていったん VitrualBox と docker-machine にした。この辺の手順は moznion さんが書いてるのでみてください。 https://moznion.hatenadiary.com/entry/2021/09/01/112601 作ってから https://twit
Amazon Linux 2 の Dockerイメージから開発環境を作り Visual Studio Codeで接続してみる Amazon Linux 2のDockerイメージから開発環境として使うコンテナを作り、Visual Studio Codeで接続してみました。 コンテナは以下をインストール or 可能としてみました。 AWS CLIをインストールする。かつクレデンシャルはローカルのものをコンテナ内でも使えるようにする。 (開発言語として)Go言語をインストールする。 ローカルマシンとコンテナで共有できるフォルダを作成する。 以下、今回作成した「docker-compose.yml」と「Dockerfile」について書いていきたいと思います。 作成したもの ローカル環境について 本作業はMacで行いました。docker-composeとDockerがインストールされているものとしま
本記事ではDockerにおける秘密情報を (I) コンテナを起動する際に使用する秘密情報 と (II) イメージをビルドする際に必要となる秘密情報 に分類して考え、特に後者を安全に取り扱うための方法について整理します。 コンテナ起動時の秘密情報とイメージビルド時の秘密情報 (I) コンテナを起動する際に使用する秘密情報としては、例えば mysql イメージ の環境変数 MYSQL_ROOT_PASSWORD があります。コンテナの起動時にこの環境変数を与えると MySQL の root ユーザーのパスワードがその値になるというものです。 あるいは、例えば Laravel などのWebアプリケーションで、バックエンドDBへの接続情報を含んだ設定ファイルを Docker ホスト側に用意しておき、コンテナ起動時にその設定ファイルをマウントするというようなケースも考えられます。 いずれにしても、こ
最小構成のリージョン+1ノード構成でも、なかなかのコストが掛かりますね。 開発環境どうするかコストが高いので、開発環境用に気軽にインスタンスを立ち上げるのは難しそうです。 ということで、本記事ではGCPが公式で提供してくれている Spanner エミュレータ を使って開発環境を立ち上げます!(エミューレータあってよかったありがとう!) gcloud CLIとdockerイメージでの提供がありますが、今回はdocker-composeで利用する例を紹介します。 サンプルコードはこちら: tarosaiba/docker-compose-spanner 以下2点工夫したポイントです。 通常、Spannerエミュレータ起動後にインスタンスの作成手順(gcloud spanner instances create)が必要になりますが、docker-compose立ち上げ時に自動でインスタンス作成さ
本文の内容は、2021年3月9日にÁlvaro Iradierが投稿したブログ(https://sysdig.com/blog/dockerfile-best-practices/)を元に日本語に翻訳・再構成した内容となっております。 Dockerfileのベストプラクティスのクイックセットをイメージビルドに適用することで、セキュリティ問題を防ぎ、コンテナ化されたアプリケーションを最適化する方法を学びます。 コンテナ化されたアプリケーションやマイクロサービスに精通している人なら、自分のサービスがマイクロサービスであることに気づいているかもしれません。しかし、脆弱性の検出、セキュリティ問題の調査、デプロイ後の報告や修正など、管理のオーバーヘッドがマクロな問題になっています。 このオーバーヘッドの多くは、セキュリティをシフトレフトし、開発ワークフローの中で可能な限り早く潜在的な問題に取り組むこ
はじめに やめろ、ではなく、やめたほうがいい。です。自分のユースケースに合ってるか今一度確認することを推奨します。基本的にはAlpineは避けたほうが良い、というのが2021年時点での私の認識です。 なんで? libcに一般的な互換性が不足しているからです。Ruby、Python、Node.jsなどでNativeモジュールをバンドルしているアプリケーションの場合、パフォーマンスの劣化や互換性の問題にぶち当たる場合があります。 superuser.com あとは他のベースイメージの軽量化もそれなりに進んできていて、Alpineが定番軽量イメージと言う認識は2018年頃には消えつつあったかなという認識でいます。 どうすりゃええねん ※Debian Slimがあるやんってツッコミ結構もらったんですが、Slimは当たり前過ぎてもう紹介しなくていいかなっていう甘えで省略していました。よろしくおねがい
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く