Docker

Dockerfileのヒアドキュメントを試す

概要 前提知識 環境 動作検証 syntaxについて syntaxとは docker/dockerfileとは xxx-labsとは 参考 まとめ 概要 docker/dockerfile:1.3.0-labsからDockerfileでヒアドキュメントがサポートされた。 https://github.com/moby/buildkit/blob/master/frontend/…

ローカル開発環境でプロキシサーバを構築しHTTP headerを利用する

前提 環境 結論 詳細 app 動作確認 前提 Webアプリケーションサーバ+プロキシサーバ構成のアプリケーションを運用する Webアプリケーションサーバにアクセスする際、プロキシサーバがX-Forwarded-Hostを付与する X-Forwarded-Host - HTTP | MDN これらのロ…

.envで定義した環境変数をDocker,docker-compseで使用する例

.envからdockerの実行環境に環境変数を渡す例 環境 go1.13.8 Docker version 19.03.8 ディレクトリ構成 Dockerfile docker-compose.yaml go.mod main.go .env .env2 main.go package main import ( "fmt" "os" ) func main() { fmt.Println("hello world") f…

docker-composeで実行環境の変数をコンテナに展開する方法

結論 https://docs.docker.com/compose/environment-variables/#pass-environment-variables-to-containers docker-compse.yamlのenvironmentに、実行環境の環境変数と同じキーをバリューなしで書く 環境 $docker --version Docker version 19.03.8, build a…

docker-composeのENVはbuild時に適用されない

まとめ 環境 検証 1の検証 ENVはbuild時に適用される ENVはコンテナ起動時に適用される 2の検証 ENVはbuild時に適用されない ENVはコンテナ起動時に展開される 参考 まとめ DockerfileのENVはbuild時もコンテナ起動時も適用される。 docker-compse.yamlのENV…

DockerfileのWORKDIRに$HOMEと書いても認識されない

環境 $docker --version Docker version 18.09.0, build 4d60db4 概要 DockerfileのWORKDIRはDockerfileのENVで定義された環境変数しか使えないので下記の2点を考慮する。 明示的な絶対パスを使う 事前にパスを環境変数として定義する ドキュメント https:/…

CircleCI上でDockerfileのCMDが動かない

問題 CircleCI上でDockerイメージを使うとDockerfileのCMDが動かない。 ローカルでDockerコンテナを起動するとCMDが動く。 原因 最初のコンテナはcommandを書かないとエントリポイントが動かない https://circleci.com/docs/2.0/configuration-reference/#do…