NET Core single-file deploying in docker: а какой будет ENTRYPOINT?
Обычно при публикации NET Core приложения в докер-контейнере происходит примерно следующее:
собираю приложение для целевой платформы, например, командой вида
dotnet publish --runtime linux-musl-x64 --self-contained true -c Release
(Рантайм в этой команде соответсвует сборке для alpain)
Запускаю построение образа командой
docker build -t demo-image -f Dockerfile .
где докерфайл выглядит примерно так:
FROM mcr.microsoft.com/dotnet/aspnet:7.0
COPY publish-output/* /App/
WORKDIR /App
EXPOSE 80
ENTRYPOINT ["dotnet", "Ddemo.dll"]
И потом я запускаю контейнер командой наподобие этой:
docker run -it --name demo-cont -p 1080:80 --restart unless-stopped -d demo-image
И тут я прочитал ( https://learn.microsoft.com/en-us/dotnet/core/deploying/single-file/overview?tabs=cli ) про публикацию в виде одного файла, когда вместо более 300 файлов в директории publish образуется всего три файла: один огромный с именем Ddemo, и пара json-ов ( appsettings.json и appsettings.Development.json )
Очень красиво. Очень удобно. Очень круто.
Но... здесь возникает ключевой вопрос.
Раньше у меня в папке лежала отдельная DLL-ка, которая и была в докерфайле ENTRYPOINT
(см. последнюю строку докер-файла)
А теперь что я должен стартовать в докер-контейнере? То есть, что мне надо в докерфайле прописать в секции ENTRYPOINT?
Гугление по ключевым словам - не привело к результатам...
Спасибо заранее за подсказки!