変更されたファイルの所有権を維持するために、バインドマウントホストディレクトリのコンテナ内でclang-formatを実行したいと思います。
私が実行している単純なDockerfileがありますpodman
。以下のようにホストディレクトリとして実行するときにコンテナをバインドマウントしますsudo podman run -v $PWD:/app clang-format
。
podman
rootにするためにsudoを実行しています。当社にはこれが必要です。このclang-format
バイナリはコンテナでのみ使用できます。
clang-format
現在のコンテナで実行すると、所有権はdocker rootユーザーに変更されます。
FROM my-base-image-with-clang-format
SHELL ["/bin/bash", "-c"]
WORKDIR /app
ENTRYPOINT find . -regex ".*\.\(cpp\|h\)" -exec clang-format -i {} \;