0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Dockerbuild時に.envなどの.付きの環境変数ファイル的なものはコピーされない

Posted at

諸事情によって組織を作った時に、cloud run上にてgitのリポジトリにアクセスしたかったため、docker build後にgitが使える状態にしたかったが、割とプライベートな環境だしcredentialsをコンテナ上にコピーしようと思ったら思った以上にハマった

結論から言うと表題の通りで、.から始まるファイルはコピーされない。

ADD .git-credentials .git-credentials

こういうのは「追加できませんよ」とかエラーとか出してbuildを止めてくれたらいいんだけど、そこまで親切ではなかった。

本当は暗号化された認証情報とかを渡すとかもっとセキュアな方法がある(気がする)けど、一旦の暫定対応は以下のような形でもいけることはいけた

ADD git-credentials git-credentials
RUN mv git-credentials .git-credentials

ちなみにDockerfileと同じ場所に.dockerignoreのファイルをおけば.gitignore的な感じで使えます。
https://docs.docker.com/engine/reference/builder/#dockerignore-file

上記リンクの下の方に、以下のようなコメントがあり、確かに.つきのファイルをbuild時に含めて色々あったことは想像に難くはないけれど。。

歴史的な理由から、このパターン.は無視されます。

おねがい

デフォルトでbuild時にignoreするパターンを編集する方法を調べたけど見つからなかったのでどなたかご存知でしたら教えてください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?