勉強日記

チラ裏

Docker

まだdocker-composeのホスト側portを考えるのに疲弊しているの? 〜IP指定してwell-known ports使い放題、同時に1677万案件回す〜

対象読者 問題提起 解決案 -- ポートをバインドするIPを指定する nginx-proxyとの違い macOS固有の問題 Docker Desktop for mac 2.2.x の不具合 127.0.0.1 以外のローカルループバックアドレスがデフォルトで使えない タイトルは釣りです 1677万案件は試して…

AWS Encryption CLI触った

AWS Encryption CLIのdockerイメージ KMSキー作る 暗号化 復号 AWS Encryption CLIのdockerイメージ hub.docker.com KMSキー作る via terraform resource "aws_kms_key" "example" { description = "example for encryption cli" deletion_window_in_days = …

Docker Composeの名前解決まわり 備忘録

Docker Composeのネットワーク 備忘録 DL;DR 再現 C-S構成の環境を立てる C->Sの疎通確認 サーバーをネットワークから引き剥がしてみる サーバーをネットワークに戻すと… DNSのゾーン設定の変化 疎通している状態でdigる ネットワークからサーバーコンテナを…

Docker outside of Docker (DooD) & bind-mount で詰まった話 (原因解明済、未解決)

経緯 再現 ランナー相当のDooD構築 Runnerコンテナにログイン Runner内でコンテナ生成 Runner内でコンテナ生成する際、Runner内のファイルのbind-mountを試みる 真相 経緯 GitLab private instanceを使っている案件にアサインした CIを構築するも、ランナー…

phanコンテナイメージを作った

きっかけ 作ったイメージ Dockerfile 学び きっかけ https://packagist.org/packages/phan/phan こーゆーのでいいんだよ、こーゆーので… pic.twitter.com/PjBb3bq1PS— っどさん (@tadsan) 2019年11月29日 @tadsanさんがphan/phanのイメージを作っていた 初め…

【解決】docker on WSL2 で、docker image build時にネットワークエラー

環境 現象 結論: dockerdの設定で解決 詳細 composerのinstallerが降ってこない composer.pharが降ってこない composerライブラリが降ってこない 解決 所感 環境 Windows 10 PRO 19030.1 WSL2 Ubuntu-18.04 docker on WSL2 docker --version Docker version …

【開発環境】Windows10で、Emacs上のシェルでDockerコンテナログインできるようになった話

モチベーション WSL2入れる Windows10のビルド確認 WSL有効化 Ubuntu18.04 LTS 入れる Emacs26入れる Docker環境揃える Docker Docker Compose eshell上でdockerコンテナログインできることを確認 X11Forwarding Ubuntu側 sshd Windows側 sshクライアント: P…

DebianベースのcomposerコンテナでphpDocumentorを動かした話

TL;DR 動機 構成 phpDocumentor実行、エラー出る alpineベースだとうまく動かないよう debianベースのcomposerイメージ作る phpDocumentorさえ使えればいい場合 TL;DR alpineベースだとうまく動かないのでdebianベース等使え 動機 composerとかがなかった太…

【Laradock】【Windows】workspaceコンテナの操作で "the input device is not a TTY" と怒られるのを回避する方法

環境 現象 回避方法 根本的解決方法 環境 Windows10 Docker Desktop for Windows Laradock cmdでもPowerShellでもないshell Emacs Shell GitBash 現象 GitBashやEmacs Shellなどの上で下記コマンドを実行する docker-compose exec --user=laradock workspace…

すごいH本 Ch1 Starting Out

learnyouahaskell.com Starting Out Calling Functions Baby's First Functions An Intro to Lists Concatenation Accessing List Elements Lists Inside Lists Comparing Lists More List Operations Texas Ranges I'm a list Comprehension Tuples Using T…

入門監視 ch7 アプリケーション監視

www.oreilly.co.jp メトリクスでアプリケーションを計測する 【コラム】APMについて (Statsdは)内部ではどのように動いているのか ビルドとリリースのパイプラインの監視 healthエンドポイントパターン アプリケーションロギング メトリクスにすべきか、ログ…

はじめてのPHPプロフェッショナル開発 ch15 デプロイの自動化

Webアプリケーションの公開 Heroku AWS ソフトウェアのデプロイメントサイクル デプロイ自動化のメリット 小さい単位でのデプロイ リアルタイム監視も一緒に整備しよう ここまでのソフトウェアデプロイメント コンテナベースのビルド&デプロイ インフラレイ…

docker-composeのenvの適用優先度

調査結果 laradockの.envは、同名の環境変数を複数設定した場合、後に設定したもので上書きされる 動機 laradockを使用している laradockの.envファイルをカスタマイズしている laradockがバージョンアップし、docker-compose.ymlとenv-exampleに更新があっ…

はじめてのPHPプロフェッショナル開発 ch13 開発に役立つツール

なぜツールを使うのか PHP_CodeSniffer: コーディング規約チェックツール 使い方 実践的なPHP CSの利用 PHPStan: コード解析ツール 使い方 実践的なPHPStanの利用 なぜツールを使うのか 三大美徳が1つ、怠慢 再現可能性 人間は、昨日の自分のコードが他人の…

Emacs / markdown-preview-mode + pandoc

pandoc markdown-preview-mode 設定 conf/markdown-config.el ... init.elから呼ぶやつ レンダラ $PATH環境変数をemacsに渡すための設定 CSS変える 課題 dockerとかいろいろ覚えたので再度入れた スクロールに追従してくれたりする pandoc 名前どおり、あら…

Emacsにphp-cs, php-stan導入した(けど片方動かない)

環境 init.el flycheckの設定部分 phpcs phpstan が……駄目っ……! 環境 Emacs 25.2 init.el ;; require前に書く必要があるらしい (setq php-mode-coding-style 'psr2) (when (require 'php-mode nil t) ;; 拡張子phpのファイルを開いたときにphp-modeに。 ;; …

php ch5-7

CakePHP環境つくるやつ つくるだけなので要所のみ Dockerfile sedのデリミタは/以外も使えるんですね composer早くするやつも入れた FROM php:7.2-apache ENV APACHE_DOCUMENT_ROOT /var/www/html/app/webroot RUN sed -ri -e 's!/var/www/html!${APACHE_DOC…

Emacs + Laradock + Xdebug PHPステップ実行設定

環境 Xdebug 有効化 設定 geben 導入 つかう 環境 emacs 25.2 laradock環境 Xdebug PHPをステップ実行したりブレーク貼ったりできる 有効化 laradockではフラグひとつでxdebugが入る laradock/.env ... WORKSPACE_INSTALL_XDEBUG=true ... PHP_FPM_INSTALL_X…

localstackでS3をモックした

環境 localstack docker-compose.yml localstack storage_init localstack利用側のPHPコード Storageファサードでs3使う src/config/filesystems.php ハマりどころ 環境 laradock Laravel 5.7 localstack 公式 AWSのサービスをモックしてくれる有能 S3とか G…

CircleCI速くした(9分→4分)

環境 CIで時間かかる処理 キャッシュによる高速化 npmパッケージ composerパッケージ dockerイメージビルド キャッシュ名生成部分 キャッシュ読み出し部分 dockerイメージビルド・ファイル書き出し部分 キャッシュ保存 イメージ読み込み 高速化による弊害と…

AWS ECSでdocker本番運用してみた話

バレットガールズというゲームの話 平成最後の夏をバレットガールズ2のタイムアタックに捧げた 世界最速です RTA in Japan Online 2に出るなどした そして3作目 とんでもねえマゾゲーだった 収集要素の情報が一切ない 収集要素の情報を事細かに調査する??…

ubuntuにminikube入れた時のメモ

コマンドメモ たぶんいらないもの多数 そのうちちゃんと何してるか把握して吟味する curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main…

ubuntuにdocker-compose入れたりなんだり

LPICの勉強兼ねる docker-ceを入れてもdocker-composeはついてこない パッケージの情報見てみる 詳細情報見てみる チェンジログ見てみる インストールをシミュレーション ダウンロードだけ インストール 確認 docker-ceを入れてもdocker-composeはついてこな…

ubuntuにdocker入れて一般ユーザーで動かすまで

LPICの勉強兼ねる 必要なもの入れる Dockerのパッケージリポジトリ登録する Docker CEインストール ユーザーをdockerグループに入れる 動作確認 必要なもの入れる sudo apt update -y sudo apt install -y apt-transport-https ca-certificates curl softwar…

Docker/Kubernetes 実践コンテナ開発入門 Ch.5 Kubernetes入門

gihyo.jp Kubernetesとは Dockerの隆盛とKubernetesの誕生 クラウドプラットフォームのKubernetesサポート Dockerでの正式採用 Kubernetesの位置付け ローカル環境でKubernetesを実行する Docker for Windows/MacでローカルKubernetes環境を構築する Kubectl…

【Docker Compose】volumesによるコンテナ間コード共有

ユースケース 結論 構成 ソース共有を確かめる ソースを更新してみる docker-compose down時にボリューム消す ユースケース docker-composeでphp-fpmとnginxを立ち上げる php-fpmコンテナの静的ファイルだけnginxコンテナから配信したい 結論 volumesを用い…

Docker/Kubernetes 実践コンテナ開発入門 Ch.4 Swarmによる実践的なアプリケーション構築

gihyo.jp 本章を一言でいうと Webアプリケーションの構成 アプリケーションの仕様 アーキテクチャ アーキテクチャの構成要素 配置戦略 下準備 Swarmクラスタ立ち上げておく overlayネットワーク作っておく TODOアプリケーション構築の全体像 MySQL Serviceの…

Docker/Kubernetes 実践コンテナ開発入門 Ch.3 実用的なコンテナの構築とデプロイ

gihyo.jp コンテナ配置戦略 Docker Swarm 複数のDockerホストを用意し、Swarmクラスタを構築する DockerレジストリにイメージをPushする Service Stack Stackをデプロイする Swarmクラスタ上のコンテナを可視化する Stackの削除 ServiceをSwarmクラスタ外か…

本番環境にデプロイ可能なLaravelのDockerイメージを作った話

コンテナ構成 動機 イメージビルド環境 ハマった所~解決の経緯 マルチステージビルド コンテナ構成 nginx php-fpm mysql 認証絡みで面倒くさくなって5.7 動機 laradockはサクっと始められて便利 だが、ホストとのボリューム共有があり、そのままでは本番環…

Docker/Kubernetes 実践コンテナ開発入門 Ch.2 Dockerコンテナのデプロイ

gihyo.jp コンテナでアプリケーションを実行する DockerイメージとDockerコンテナの基本 簡単なアプリケーションとDockerイメージをつくる DSL: Domain Specific Language Dockerイメージをビルドする コラム ENTRYPOINTでコマンドの実行の仕方を工夫する Do…