Сохранить и запустить контейнер, созданный из Visual Studio Docker Support. - PullRequest
0 голосов
/ 06 февраля 2019

Мы начали преобразовывать наши микросервисы в контейнеры, и мы добились успеха с помощью Visual Studio 2017. Процесс настолько прост, насколько это возможно, с использованием файла docker, сгенерированного из функции поддержки добавления docker (я отвечаю на вопрособ этом здесь ).Тогда мы, очевидно, можем отладить и запустить его из Visual Studio без проблем .Если я останавливаюсь и затем снова запускаю тот же контейнер из Kitematic, он не работает.

Мы попытались извлечь рабочий контейнер, используя следующие команды:

  1. имя сохранения в докере: тег -o [путь_файлов] \ Image.tar

  2. загрузка докера -i [путь_файла] \ Image.tar

  3. докерrun -t -d -p 8080: 80 name: tag

когда мы запускаем docker ps все работает нормально, состояние Up, с указанными портами,но не отвечает ни на какие HTTP-запросы.

Чего нам не хватает?

1 Ответ

0 голосов
/ 05 апреля 2019

Тем временем я смог решить проблему, но выглядит странным решением.Если в конечном итоге контейнер прекрасно работает в Debug, но не в выпуске , я советую вам:

  1. Не используйте проекты .Net Standard с.Сетевые зависимости ядра (в нашем случае мы используем GlobalExceptionFilter в проекте .NET Standard).

  2. Чтобы решить эту проблему, вы можете создать nuget с этими зависимостями, а затем использовать его попроекты.(Nuget в этом случае здесь для примера: https://www.nuget.org/packages/Backend.BaseApi)

  3. Если вы не добились успеха, вы всегда можете изменить все на .Net Core или запустить новое приложение, запустите в выпуске и постепенно добавляйте код для устранения проблемы.

Удачи

...