В Dockerfile я определил точку входа :
ENTRYPOINT ["sh", "./docker-entrypoint.sh"]
В docker-entrypoint.sh
я хочу создать файл (file.json
) из template.json
, которыйничего, но заменяет некоторые переменные окружения фактическими значениями.
#! /bin/bash
eval "echo \"$(<template.json)\"" > file.json; npm start
Теперь, после попадания в контейнер, я вижу, file.json
пусто.Но если я выполняю ту же самую команду в приглашении bash внутри контейнера, она работает, и я вижу необходимое содержимое в file.json
.
Почему это поведение?