Gostaria de criar um arquivo usando heredoc e depois executar um comando na mesma instrução RUN em um Dockerfile.
Para ilustrar, pegue este Dockerfile
FROM alpine
RUN export FOO=bar && \
cat <<EOF > testfile
Hello, World!
EOF \
&& echo $FOO
Quando tento construir isso, falha com ERROR: failed to solve: unterminated heredoc
.
Parece que o EOF
tem que estar em uma linha por si só. Mas se eu fizer isso, a declaração RUN termina e eu tenho que colocar o próximo comando em uma nova declaração RUN.
Gostaria de ter alguns comandos seguindo o heredoc na mesma instrução RUN para minimizar camadas e ter a variável de ambiente disponível.
Isso é possível?