docker の検索結果:
…次 🐋 第1章 : Docker の復習と「Hello, Kubernetes」 第2章 : なぜ Kubernetes が必要なのか? 第3章 : Kubernetes 環境の選択肢 第4章 : API リソースと kubectl 第5章 : Workloads APIs カテゴリ 第6章 : Service APIs カテゴリ 第7章 : Config & Storage APIs カテゴリ 第8章 : Cluster APIs カテゴリと Metadata APIs カ…
…るときに,お手軽な Docker Desktop for Mac "Edge" を使っている.Feature Gates を有効化した Kubernetes クラスターで検証をするときは minikube に --feature-gates オプションを指定して使うこともある. Docker Desktop for Mac Edge release notes | Docker Documentation GitHub - kubernetes/minikube: Run K…
…CI のビルド済み Docker イメージ - CircleCI Pre-Built CircleCI Docker Images - CircleCI Designing a package manager: an inside look at CircleCI orbs 永続化(ワークスペースとキャッシュ) 第4章「ワークフローでジョブを組み合わせる」には「ワークスペース」や「キャッシュ」など,CircleCI をよく使っていても個人的に理解が曖昧になりがちだった機能の解…
…s: hello: docker: - image: cimg/base:stable steps: - checkout - run: exit 0 - slack/status workflows: version: 2 ci: jobs: - hello exit 0 と exit 1 を使って実行すると,以下のように「成功」も「失敗」も Slack に通知できるようになった.簡単! fail_only パラメータを追加する 実運用を考えると,ジョブが「失敗」したときに…
… 事前準備 今回も Docker Desktop for Mac "Edge" を使って,以下の Kubernetes 環境で試す.昨日の記事と同じく fluxctl コマンドも使う. $ kubectl version --short Client Version: v1.18.6 Server Version: v1.18.6 $ fluxctl version 1.20.2 そして,チュートリアルで使う GitHub リポジトリ fluxcd/flux-kustomiz…
… 事前準備 今回は Docker Desktop for Mac "Edge" を使って,以下の Kubernetes 環境で試す. $ kubectl version --short Client Version: v1.18.6 Server Version: v1.18.6 次に fluxctl コマンドを使えるようにする.今回は brew でインストールしておく. $ brew install fluxctl $ fluxctl version 1.20.2 最後にチ…
…om 前提 今回も Docker Desktop for Mac "Edge" を使って,以下の Kubernetes 環境で試した. $ kubectl version --short Client Version: v1.18.6 Server Version: v1.18.6 $ kustomize version --short {3.8.1 2020-07-16T05:11:04+01:00 } Examples「configGeneration」とは? kusto…
…on 前提 今回は Docker Desktop for Mac "Edge" を使って,以下の Kubernetes 環境で試した.kustomize コマンドは brew install kustomize で使えるようにした.なお,現在は kubectl と統合されて kubectl kustomize というコマンドも使えるけど,本書にコラムが載っている通り,バージョンが異なる. $ kubectl version --short Client Version: v1…
….18.6 通常の Docker Desktop for Mac だと Kubernetes v1.16 になるけど,Docker Desktop for Mac "Edge" を使えば,Kubernetes v1.18 を使えるようになる.個人的には Edge を使っている. docs.docker.com ConfigMap を作成する まず,マニフェストを書かずに kubectl create で直接 ConfigMap を作成する.今回は --from-literal…
… 検証環境 今回は Docker Compose で検証環境を構築した.役割としては,大きく4種類あり,以下に載せておく.簡単に構成図も描いておいた. enqueue コンテナ : ジョブ登録 (Python) queue コンテナ : キュー (Redis) worker1 コンテナ : ジョブ実行 (Python) worker2 コンテナ : ジョブ実行 (Python) なお,検証環境を再現する場合は GitHub の sandbox-rq リポジトリを見てもらえれば…
…ルしたくない場合は,Docker を使う案もある. $ docker run --rm simonwhitaker/gibo version gibo 2.2.4 by Simon Whitaker <sw@netcetera.org> https://github.com/simonwhitaker/gibo gibo を使う 基本的には gibo dump コマンドを使って,標準出力をリダイレクトする.以下のように gibo dump Python とすれば,Python…
…る場合」で,例えば Docker Desktop for Mac を使ってコンテナイメージをビルドをしたり,実装したコードをコンパイルしたり,ローカル環境に API サーバを起動したり.通常なら問題なくても,配信中だと顕著に遅くなってしまう.Amazon EC2 など,クラウド上にデモ環境を構築して SSH をしたり VS Code Remote Development を使う案もあるし,実際に使っているけど,やはり「ローカル環境で動かしたい場合」もある! Mac の「画面共…
… (Haskell Dockerfile Linter) を組み合わせて,今まで雑に実装してきた Dockerfile の静的解析を自動化する環境を作った.できる限り Dockerfile Best Practices を意識していることもあり,警告はあまり多く出なかったけど,やはり CI (Continuous Integration) で気付ける安心感はある! www.docker.com hadolint (Haskell Dockerfile Linter) hado…
…ions を使って,Docker イメージをビルドして実行できるようになる. Step 1 : Add a Dockerfile Step 2 : Add an entrypoint script Step 3 : Add an action.yml file Step 4 : Start your workflow file Step 5 : Run an action from your workflow file Step 6 : Trigger the workflo…
… Python / Docker をよく使っている.最高に便利なんだけど,例えば JavaScript などはリリース頻度が高く,すぐにプルリクエストが溜まってしまう(プルリクエスト数の制限はできる).最近は「Automatic PR merging(プルリクエスト自動マージ機能)」を使うことも多く,設定例を紹介する. dependabot.com Dependabot 設定画面 「Automatic PR merging」をすぐに試すなら設定画面を使う.true or fa…
…下はサンプルとして Docker コマンドの構成図を描いてみた.基本的には「マーカー」と「蛍光ペン」を使う.「ペン」はちょっと細すぎる. 2. イラストのようなもの 簡単なイラストも描いてみた.そもそも絵が苦手ではあるけど,雰囲気は伝わると思う💦 気になる点 iPad で Jamboard を使うと「元に戻す/やり直し」が右下にあり,右利きだと描きながら押してしまう.ツライ! まとめ 「デジタルホワイトボード環境」を作るために「Elemiya タッチペン」を購入した.Appl…
…kakakakku/docker-hands-on 一括アップデート 本書の最後には「レシピ集」があり,ghq の基本的なコマンドを活用した Tips が載っている.個人的には「標準出力からリストを受け取れる仕組み」と「--parallel オプション」を組み合わせた「一括アップデート」をよく使いそう.全リポジトリだと流石に多すぎるため,例えば以下のように ghq list である程度フィルタリングしてから ghq get --update --parallel に流せる.便…
…確認をした.今回は Docker Compose で「Envoy コンテナ(フロントエンド)」と「Sinatra コンテナ(バックエンド)」を起動し,Sinatra では単純に文字列を返すプロトタイプ実装にした. get '/' do 'Hello!' end 構成図は以下のようになる. 負荷テスト : Vegeta 今回は Vegeta を使って負荷テストを行う.-rate オプションに秒間のリクエスト数を指定し,-duration オプションに継続する時間を指定する.レポ…
…確認をした.今回は Docker Compose で「Envoy コンテナ(フロントエンド)」と「Sinatra コンテナ(バックエンド)」を起動し,Sinatra で x-request-id ヘッダを表示するプロトタイプ実装にした.構成図は以下のようになる. envoy.yaml の一部を以下に載せておく.generate_request_id の部分を修正しながら動作確認をした. generate_request_id なし generate_request_id: t…
MySQL(5.7 以降)で「JSON 型」のカラムから指定したキーを取得する場合 JSON_EXTRACT() を使う.もしくは JSON_EXTRACT() と同じ動作をする -> オペレータを使うこともできる.以下に members テーブルの info カラムから name キーを取得する SQL を載せる.なお,今回は MySQL 8.0.19 を検証環境にした. -- サンプルテーブルを作成する mysql> CREATE TABLE members ( info…
… katacoda/docker-http-server:healthy を起動し,動作確認をしておく. $ docker run --name=proxy -d \ -p 80:10000 \ -p 9901:9901 \ -v $(pwd)/envoy/:/etc/envoy \ envoyproxy/envoy:latest $ docker run -d katacoda/docker-http-server:healthy $ docker run -d katac…
… katacoda/docker-http-server:healthy を起動する. $ docker run --name=proxy -d \ -p 80:10000 \ -p 9901:9901 \ -v $(pwd)/envoy/:/etc/envoy \ envoyproxy/envoy:latest $ docker run -d katacoda/docker-http-server:healthy; $ docker run -d katacoda/dock…
… GraphQL, Docker, Ansible, Kubernetes, Prometheus, HashiCorp」などなど,技術領域の制限はせず,様々な技術に挑戦できた.そして幅広く学んだからこそ,さらなる「未経験の技術の発見」もできた.本当に未経験の技術は無限にある!Trello のチケットは日々増えているけど,1年間を通してずっと「楽しく学び続けられた」ことは良かった. 当然ながら「技術的な深さを追い求めること」は課題となる.認識はしている.しかし,仕事柄プロダク…
… katacoda/docker-http-server を起動する.katacoda/docker-http-server は v1 を2個 / v2 を2個 / v3 を1個起動する.構成図は以下のようになる. $ docker run -d --name proxy1 -p 80:8080 -v /root/:/etc/envoy envoyproxy/envoy $ docker run -d katacoda/docker-http-server:v1 $ dock…
… katacoda/docker-http-server:healthy を2個起動する.コンテナイメージ(healthy タグ)の解説は書かれてなく,あくまで予想だけど,デフォルトでヘルスチェックに成功する実装になっていると思う.そして curl で状態を変えることもできる. $ docker run -d --name proxy1 -p 80:8080 -v /root/:/etc/envoy envoyproxy/envoy $ docker run -d katac…
…のようになる. $ docker run --name=api-eds -d \ -p 9901:9901 \ -p 80:10000 \ -v /root/:/etc/envoy \ envoyproxy/envoy:latest Step.3 「Start upstream services」 今回も katacoda/docker-http-server を起動し,個別に接続確認をしておく. $ docker run -p 8081:8081 -d -e EDS_SER…
… katacoda/docker-http-server を起動し,以下の構成図のようになる. $ docker run --name=proxy-eds-filebased -d \ -p 9901:9901 \ -p 80:10000 \ -v /root/:/etc/envoy \ envoyproxy/envoy:latest $ docker run -d katacoda/docker-http-server $ docker run -d katacoda/do…
… katacoda/docker-http-server を2個起動し,最終的に以下の構成図のようになる. 8080 (HTTP) 8443 (HTTPS) 8001 (管理画面) $ docker run -it --name proxy1 -p 80:8080 -p 443:8443 -p 8001:8001 -v /root/:/etc/envoy/ envoyproxy/envoy $ docker run -d katacoda/docker-http-server…
… katacoda/docker-http-server となり,これは Go の net/http パッケージを使って,ホスト名を表示するだけの実装になっている. $ docker run --name proxy1 -p 80:8080 --user 1000:1000 -v /root/envoy.yaml:/etc/envoy/envoy.yaml envoyproxy/envoy $ docker run -d katacoda/docker-http-server…
今回は Docker で使える「ヘルスチェック機能」を試す.Release Note を読むと,機能としては Docker 1.12 から使えるらしく,3年前からあったなんて...!仕組みとしては,Docker デーモンからコンテナに指定したコマンドを定期的に実行する. Dockerfile 構文 「ヘルスチェック機能」を使う場合,まず Dockerfile に HEALTHCHECK を設定する.実行するコマンド以外に以下のオプションも設定できる.注意点として,--retr…