Dockerfileは、アプリケーション構成を保守可能な形で記録できる強力なツールです しかし、その真価を十分に発揮するためには、Dockerfileを書く人の理解がかかせません。 本スライドは、Dockerfileを利用してアプリケーションをデプロイするアプリケーション開発者を対象に、優れたD…
OrbStackとは OrbStackは、軽量で高パフォーマンスな仮想化プラットフォームで、主にmacOS向けに提供されています。DockerコンテナやLinux仮想マシンを高速で動作させることができ、特にAppleシリコン(M1/M2)Macでの利用に最適化されています。Docker Desktopに代わるツールとして注目されており、リソース効率が良く、システムの負荷が抑えられるのが特徴です。 「なぜOrbStackを選ぶか?」 ⚡️ 超高速 : 2秒で起動、最適化されたネットワークとファイルシステム、高速なx86エミュレーション。 💨 超軽量 : 低CPUとディスク使用量、バッテリーに優しく、少ないメモリでも動作、ネイティブのSwiftアプリ。 🍰 シンプルで手間いらず : 自動でドメイン名とマイグレーションを設定、CLIでコンテナ・イメージ・ボリュームファイルにアクセス、VPNと
本記事は「珠玉のアドベントカレンダー記事をリバイバル公開します」企画のために、以前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
はじめに WSL2(Windows Subsystem for Linux 2)は、Microsoft Windows上でLinuxカーネルを直接実行できるようにする機能です。 この記事ではWSL2環境にDockerを導入しGPUを用いた機械学習環境を構築する手順を紹介します。 構築イメージは以下の図の通りです。NvidiaGPUを搭載したマシンにWSL2環境を構築します。Dockerを用いてコンテナを用意し、CUDAは各コンテナ内のCUDA Toolkitを用いて利用します。 今回開発するPCのスペックは以下の通りです。 Windows 11 Windows version: 22H2 GPU:NVIDIA Geforce RTX 3060 12GB 設定 1. WSL2を有効化 デフォルトではWSL2環境が無効化されている可能性があるので、始めに有効化しておきましょう。 「コントロール
エンジニアの岡村です。 自分はサーバーがメインではなく、あまり業務でガッツリ触るわけでもないのですが、最近それなりに活用するようになってきました。しかし、ネット上の日本語情報を読んでいるだけではこれの書き方が正しいのかよく分からない、と悩むことが結構あったため、色々情報を漁ってみました。 この記事は、特に自分が気になった部分の調べた結果を記事に纏めてみたものです。対象読者はdocker-composeを雰囲気でupやdownは叩けるけどComposeファイルの書き方がよく分からんとなってる人です。 Docker Composeの概要とcompose.yaml、Compose Specの関係 compose.yamlの書き方は Compose Specに準拠すればOK Compose Specの場所 推奨のファイル名はcompose.yaml compose.yaml内にバージョンを記述する
この記事は、株式会社カオナビ Advent Calendar 2023 の3日目です。 はじめに 株式会社カオナビの高橋(@kunit)です。 今回は MySQL バージョンアップ(5.7 -> 8.0) で起きた問題とそれに対してどのように対処したのかを書いていこうと思います。 何が起きたのか MySQL 5.7 から 8.0 にバージョンアップをするにあたって、CI およびローカル環境でテストができるように MySQL 8.0 のイメージを作成し、それをつかって各機能の担当者にテストを開始してもらっていたのですが、以下のような事が起きました。 接続を MySQL 5.7 から 8.0 に切り替えただけでテストの時間が3倍くらいかかるようになった そこを変更するだけで3倍遅くなるってやばいぞということで報告してくれた担当者と同じテストを自分でも実施してみると再現性があり、それが以下のどの
あらすじ 公衆WiFiに繋いだ状態でいつものように docker container run -p 8080:80 nginx のような感じでDockerコンテナを動かしていたら、外部からリクエストを受信した。 ファイアウォールを設定し、外部からのアクセスを拒否しているはずなのになぜアクセスできたんだ... 環境 Docker desktop for mac with apple silicon 4.21.0 何が起きた? Dockerはデフォルトの設定では-p 8080:80のようにポートマッピングするとファイアウォールの設定を書き換え、外部からそのポートへのアクセスを許可するようになっている。 その結果LAN内の他のPCから対象ポートにアクセス出来てしまう。 ちなみにこれはDocker公式からも注意が出ている。 Publishing container ports is insecur
章立て はじめに Docker・Container型仮想化とは Docker一強時代終焉の兆し Container技術関連史 様々なContainer Runtime おわりに 1. はじめに Containerを使うならDocker、という常識が崩れつつある。軽量な仮想環境であるContainerは、開発からリリース後もすでに欠かせないツールであるため、エンジニアは避けて通れない。Container実行ツール(Container Runtime)として挙げられるのがほぼDocker一択であり、それで十分と思われていたのだが、Dockerの脆弱性や消費リソースなどの問題、Kubernetes(K8s)の登場による影響、containerdやcri-o等の他のContainer Runtimeの登場により状況が劇的に変化している。本記事では、これからContainerを利用したい人や再度情報
はじめに Dockerfile、サッと書こうと思ったのに、書き始めたら意外と時間かかったりしますよね。 突き詰めるとすごく奥が深いなと思います。 公式のドキュメントでも、Dockerfileのベスト・プラクティスという形で公開してくれていますが、 これを毎回意識するのは大変です。 また、意識できていたとしても、複数人で管理していると、各個人のスキルレベルによって差が出てしまいます。 そんなときにおすすめのツールを見つけたので紹介します。 hadolintというツールです。 Haskell Dockerfile Linterの略だそうで、Dockerfileの静的解析を行ってくれるlintツールです。 hadolintを使うとこんな利点があります。 build前にシンタックスエラーなどに気付ける (地味にトライアンドエラーしてると時間食うんですよね...) 自然とベストプラクティスに則ったD
サーバー関連は苦手、でもWebサイトやアプリを理想的な環境で開発したい、Webサーバーや仮想サーバーの知識を身につけたい、そんな人に初心者でも始められるDockerの解説書を紹介します。 表紙に既視感を覚えた人は、大正解! 本書は今年発売された「Visual Studio Code完全入門(紹介記事)」の姉妹書です。 私は本書で初めてDockerを使用してみたのですが、本当に驚くほど簡単にWebサーバーやWordPress用の仮想サーバーを構築できました。 正真正銘「完全入門」「ここから始めて、ずっと使える」一冊です! Dockerとは、コンテナと呼ばれる仮想化技術を扱えるもので、一言で言うと、仮想サーバーを構築できるツールです。仮想サーバーはWindowsやmacOS上に異なるOSでサーバー構築ができます。 本書はDockerやコンテナ、仮想サーバーに高いハードルを感じてしまう人のために
------------------------------------------------------ 2024 年 1 月更新 本書がきっかけで「なんとか Docker を使えるようになりたい」というプログラマの方向けの入門書を秀和システム様から出版させていただけることになりました 開発系エンジニアのためのDocker絵とき入門 https://www.amazon.co.jp/dp/4798071501 紙書籍と電子書籍、どちらもございます この書籍と執筆経験は、みなさまからの驚くほどの高評価があればこそ得られた機会でした いつも本当にありがとうございます 書籍化に際しまして、この場で次のとおり説明させていただきます 1️⃣ 本書 ( Zenn ) は有料化しません 2️⃣ 本書 ( Zenn ) は今後更新しません 3️⃣ 本書 ( Zenn ) と出版される絵とき入門の違い
本文の内容は、2021年3月9日にÁlvaro Iradierが投稿したブログ(https://sysdig.com/blog/dockerfile-best-practices/)を元に日本語に翻訳・再構成した内容となっております。 Dockerfileのベストプラクティスのクイックセットをイメージビルドに適用することで、セキュリティ問題を防ぎ、コンテナ化されたアプリケーションを最適化する方法を学びます。 コンテナ化されたアプリケーションやマイクロサービスに精通している人なら、自分のサービスがマイクロサービスであることに気づいているかもしれません。しかし、脆弱性の検出、セキュリティ問題の調査、デプロイ後の報告や修正など、管理のオーバーヘッドがマクロな問題になっています。 このオーバーヘッドの多くは、セキュリティをシフトレフトし、開発ワークフローの中で可能な限り早く潜在的な問題に取り組むこ
背景 プロジェクトの新規立ち上げや、新しくプロジェクトに新規メンバーが入った場合に環境構築に手間取ることが多いため、Docker+VS Code Remote Containersのフロントエンドアプリケーション開発環境構築ができるリポジトリを作成しました。 本記事では上記リポジトリを用いた環境構築手順とCreate React Appによる簡単なアプリ開発例を説明します。 また、上記リポジトリをgit cloneしなくても一から同じ環境を構築できるように、リポジトリに含まれるファイル群についてもそれぞれ説明します。 本記事の対象はフロントエンドですが、バックエンドのプロジェクト構築も基本的には同じ知識で構築できるはずです。 前提条件 本記事では以下を前提条件とします。ただし、WindowsやLinuxでも基本的には問題ないはずです。 macOS Monterey Visual Studi
Mirrativバックエンドのエンジニア @stakme です! みなさんMacでDockerしてますか?今回は私から、Mac+Docker開発についての文章をお届けします。Docker Desktop for Macの有料化など、最近話題の多いところですよね。 ただし法的問題を含みますので、記事の正確性に配慮していますが、内容は保証しません。法的問題は弁護士に相談しましょう。 tl;dr まずは現状認識 必要なのはdockerd 困りがちなポイント Lima Linux バインドマウント ポートフォワード 結局どうするか あと6週間 We are hiring! tl;dr 大前提として「GUIを使わければMac版Docker Desktopは無料」ではない Docker Desktop for Macは便利だが、マウント起因でパフォーマンスに影響を受けるケースも存在する 「買わないなら
業務やプライベートでのハンズオンを通して得た知見を元に、dockerfileの実践的な書き方を記載いたしました。 軽量なdocker imageを作る観点とセキュリティーの観点を踏まえた内容になっております。なにか付け足す点などあればコメントいただければと思います。 軽量なimageを作る観点 軽量なimageの使用 Dockerfileでimageを指定する際に、軽量なimageを使用することが進めれている。 docker docsでも代表的な軽量なimageのalpineをおすすめしている。 Whenever possible, use current official images as the basis for your images. We recommend the Alpine image as it is tightly controlled and small in s
恥ずかしながら Docker をほぼ触ったことがなかったので、基礎的なことを学びました。 学びながら「こんな絵があったら理解しやすかったなー」と感じていた絵を自分で描きました。 せっかくだから整理して公開したいと思います。 同じ様な方の役に立ったら、とても嬉しいです。
Dockerコンテナの起動やイメージ管理、KubernetesクラスタへのアプリケーションのデプロイなどをGUIで行えるソフトウェアが「Portainer」です。DockerやKubernetesの管理を簡単に行えそうだったので、無料のコミュニティ版を使ってみました。 Portainer | Open Source Container Management GUI for Kubernetes, Docker, Swarm https://www.portainer.io/ Documentation https://documentation.portainer.io/ ◆Docker編 まずはDockerを利用できる環境で、以下のコマンドを実行しPortainerコンテナを起動します。今回はDocker DesktopをバックエンドとするWSL環境を利用しました。 $ docker v
こんにちは、CTO の id:motemen です。 この夏に開催したインターンの講義動画および課題を公開しましたので、お知らせいたします。以下の特設ページをご覧ください。 講義動画と課題 - はてなリモートインターンシップ2020 - 株式会社はてな - 株式会社はてな 今年のインターンは全日リモート開催とすることを早い段階で決定し、これまでの来社前提のインターンの経験に頼らず、オンラインであることを活かしたカリキュラムとして設計しなおすことにしました。 その一環として、今回のインターンに直接参加できなかった方にも実施したインターンの内容や雰囲気に触れていただけるよう、講義動画および課題を公開いたします。学生の方もそうでない方も、ぜひご覧になっていただければと思います! 講義について 今回のインターンでは、マイクロサービスをテーマに、講義の一日と、課題に取り組む三日間、それから総まとめの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く