Образ Docker не запускается - PullRequest
0 голосов
/ 10 марта 2019

У нас есть приложение ASP.Net, которое мы запускаем под Ubuntu 18.04 (с установленным aspnetcore 2.2, только во время выполнения). Мы используем сервис kestrel для обслуживания приложения и nginx в качестве обратного прокси. Все отлично работает при установке в экземпляр виртуальной машины / облака. Теперь я ищу контейнеризацию нашего приложения (просто тестирование воды). Итак, я построил образ, используя следующий dockerfile:

FROM ubuntu:18.04
RUN apt-get update && \
apt-get -y install software-properties-common wget && \
wget -q -O /opt/packages-microsoft-prod.deb https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb && \
dpkg -i /opt/packages-microsoft-prod.deb  && \
add-apt-repository universe  && \
apt-get update  && \
apt-get install -y apt-transport-https aspnetcore-runtime-2.2 nginx 

COPY default /etc/nginx/sites-available/default

COPY appfolder /opt/

ENTRYPOINT ["dotnet", "/opt/appfolder/app.dll"]

EXPOSE 80:80

Но, когда я пытаюсь запустить образ, я получаю следующую ошибку:

Вы хотели запускать команды dotnet SDK? Пожалуйста, установите dotnet SDK от: https://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409

Есть идеи, что может пойти не так? Мое предположение (будучи новичком в мире Docker): Используйте Ubuntu 18.04 в качестве базового образа и установите Dotnet и Nginx сверху, затем скопируйте сайт по умолчанию nginx и запустите приложение (используя dotnet). Видимо, я что-то упускаю.

1 Ответ

0 голосов
/ 10 марта 2019

Согласно документу Microsoft здесь .

Вам необходимо запустить

sudo apt-get update

после

sudo apt-get install -y apt-transport-https

и до

sudo apt-get install aspnetcore-runtime-2.2

...