2024 Developer survey is here and we would like to hear from you! Take the 2024 Developer Survey
![How to access host port from docker container](https://cdn-ak-scissors.b.st-hatena.com/image/square/98d6f053a97a87156775f60757c60865d0f2c47d/height=288;version=1;width=512/https%3A%2F%2Fcdn.sstatic.net%2FSites%2Fstackoverflow%2FImg%2Fapple-touch-icon%402.png%3Fv%3D73d79a89bded)
何をするか?複数の Web アプリを 1 つの VPS(レンタルサーバー)でホスティングする場合、一般的にはリバースプロキシ(nginx など)を立てて、各 Web アプリのバックエンドに繋ぐことになります。 例えば、nginx のバーチャルホスト機能を使って、app1.example.com というアドレスと app2.example.com というアドレスでアクセスされたときに、それぞれ別の Web アプリサーバー(バックエンド)に処理を振り分けます。 ここでは、リバースプロキシと 2 つの Web アプリを別々の Docker Compose で立ち上げて連携する方法を説明します。 図: リバースプロキシによる Docker Compose 連携1 セットの Web アプリであれば、1 つの Docker Compose 内に関連するコンテナをすべて含めてしまうのが楽ですが、ここでは
※追記 舌の根も乾かぬうちに Lima で圧倒的に手軽に実現できました。 Lima 版もご笑覧ください。 Lima で Intel on ARM やる 背景 Intel Mac の新品購入がそのうち無理になることが予見されるなかで、とはいえ x86-64 なコンテナで開発してんのにどうすんだよって答えが放置されたままな気がしています。 QEMU を基盤技術としている UTM を使うと、Apple Silicon Mac に、ARM64以外のCPUアーキテクチャのVMを立てることができます。UTMは、Apple Silicon向けのパッチ適用済みのQEMUがバンドルされているため、lima, podman machine と比較すると、わちゃわちゃせず即利用できます。 Ubuntu の作例はググるといくつかありますが、ちょっと食傷気味なので、 Fedora CoreOS でやってみました。
本文の内容は、2021年3月9日にÁlvaro Iradierが投稿したブログ(https://sysdig.com/blog/dockerfile-best-practices/)を元に日本語に翻訳・再構成した内容となっております。 Dockerfileのベストプラクティスのクイックセットをイメージビルドに適用することで、セキュリティ問題を防ぎ、コンテナ化されたアプリケーションを最適化する方法を学びます。 コンテナ化されたアプリケーションやマイクロサービスに精通している人なら、自分のサービスがマイクロサービスであることに気づいているかもしれません。しかし、脆弱性の検出、セキュリティ問題の調査、デプロイ後の報告や修正など、管理のオーバーヘッドがマクロな問題になっています。 このオーバーヘッドの多くは、セキュリティをシフトレフトし、開発ワークフローの中で可能な限り早く潜在的な問題に取り組むこ
{ switch(e.key) { case 'k': if (e.metaKey || e.ctrlKey) { e.preventDefault() open = !open; if (open) { document.body.classList.add('overflow-hidden'); } else { document.body.classList.remove('overflow-hidden'); } } } }"> OverviewGet Docker Docker Desktop Overview Install MacUnderstand permission requirements for MacWindowsUnderstand permission requirements for WindowsLinux Installation per Linux d
Macのdocker遅い問題 Macで開発している時、主にRailsなのですがdockerを使うと遅くなるのが嫌でずっと避けてましたが、とあるプロジェクトでBFF構成にし開発環境とデプロイ環境をECS化したりとでdocker化の流れに抗えない状況になりました。 ただ、やはり遅い。 dockerが不慣れなこともありますが、Macのdockerなかなか遅い。 そしてMacが遅い件を調べてみてもみなさん困られるのが伺えます。 そんな中で対策としてよく見かけるのが docker-sync vagrantで別立て の2つでした。 どちらが最適なのかな?と思い悩んでると、 ありました。dockerのドキュメントにまさにこの件に対しての内容が。 ボリュームマウントのチューニング 端的にまとめるとv17.04からcachedとdelegatedというオプションが追加され、書き込み読み込みの一貫性を担保しな
downコマンドの特性としては、upコマンドと真逆のことをするコマンドということになる。つまり、upコマンドで作られうるもの(イメージ、コンテナ、ボリューム、ネットワーク)をすべて削除する。 --rmiオプションは、削除するイメージの種類を指定する。allはすべてのイメージ。localはフィールドにカスタムタグのないイメージのみを削除する。--rmiオプションを省略すると、イメージは消されない。 --volumesオプションは、docker-compose.ymlのvolumesセクションに書かれた名前付きボリュームとコンテナにアタッチされたanonymous volumeが削除される。 --remove-orphansオプションは、docker-compose.ymlで定義から削除されたサービス用の未定義コンテナも削除される。 これら3つのオプションをつけないと、削除されるのはコンテナと
EDIT (2/19/21): A lot of time has elapsed since I asked this original question years ago and I've seen a flurry of activity since then. I re-selected an answer which I think is consistent with the most localized and safe option for solving this issue (which is typically associated with docker-compose). While docker did introduce the prune command, it is generally a dangerous operation and I would
なお、distrolessのイメージは2種類(3通りの名前)がありますが、Python 3.5はバグ修正はせず、セキュリティ修正のみでサポート期限が2020/9/13というステータスなので、本エントリーでは3.7の方のみを扱います。 gcr.io/distroless/python3: Python 3.5.3 gcr.io/distroless/python3-debian9: Python 3.5.3(上のイメージと同一) gcr.io/distroless/python3-debian10: Python 3.7.3 一応サンプル等もありますが、どれも1ファイルで構成されたサンプルスクリプトばかりです。前回のsite-packagesにコピーする方法を軽く試したところうまく動かず、シェルもpipもensurepipもないため、ビルドイメージにすることもできません。いろいろ調べた結果、
こんにちは、メドピアCTO室 SREの侘美(たくみ)です。 普段はRails/Vue.js/terraform/Lambdaなどを書いています。 趣味は飼い猫と遊ぶことで、生傷が絶えません。 入社してから約半年間、Railsのプロジェクトで実装をしつつ、合間に開発環境の改善をいろいろとやってきました。けっこうな分量となったので、紹介したいと思います。 なお、本記事で扱う開発環境とは下記2つを指すこととします。 ソースコードの修正/テストの実行/静的解析の実行環境 サービスを起動し、ブラウザでデバッグする環境 特徴 主な改善対象である、「MedPeer」サービスの特徴をご紹介します。 Ruby on Rails製 社内では最も巨大なRailsプロジェクト モデル数693 認証サービス、旧サービス(PHP製)と連携している 開発環境はDocker for Macを利用 コンテナ数は旧システム、
フィードバックを送信 VM と MIG へのコンテナのデプロイ コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。 Docker コンテナをデプロイして起動するように仮想マシン(VM)インスタンスまたはインスタンス テンプレートを構成できます。Compute Engine は、VM の起動時に、Docker がインストールされた最新の Container-Optimized OS(COS)イメージを使用してコンテナを起動します。 準備 コンテナについて理解を深めるために、コンテナの概要とその利点をお読みください。 Docker について理解を深めるために、Docker のドキュメントをお読みください。 Container-Optimized OS のドキュメントをお読みください。 マネージド インスタンス グループ(MIG)のドキュメントをお読みください。 ま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く