Вимоги: Упакуйте проєкт, який раніше використовував ASP.NET Core 6.0, у образ Docker, а потім запустіть його на маршрутизаторі (openwrt), і при виконанні пакету в образ Docker виникне помилка тайм-аут при відновленні пакета Nuget з dotnet restore, як показано на рисунку нижче:
Визначення проєктів для відновлення... Не вдалося завантажити пакет 'SkiaSharp.2.80.3' з 'https://api.nuget.org/v3-flatcontainer/skiasharp/2.80.3/skiasharp.2.80.3.nupkg'. Завантаження 'https://api.nuget.org/v3-flatcontainer/skiasharp/2.80.3/skiasharp.2.80.3.nupkg' закінчилося, оскільки дані не були отримані протягом 60000 мс. Було кинуто виняток типу 'System.TimeoutException'. Не вдалося завантажити пакет 'SkiaSharp.NativeAssets.Linux.2.80.3' з ' https://api.nuget.org/v3-flatcontainer/skiasharp.nativeassets.linux/2.80.3/skiasharp.nativeassets.linux.2.80.3.nupkg'. Завантаження 'https://api.nuget.org/v3-flatcontainer/skiasharp.nativeassets.linux/2.80.3/skiasharp.nativeassets.linux.2.80.3.nupkg' закінчилося, оскільки не було отримано жодних даних для 60000 мс. Було кинуто виняток типу 'System.TimeoutException'. Dockerfile проєкту налаштований за замовчуванням:
Команда пакету в docker image виглядає так:
Пошукова система виявила, що інші користувачі також стикаються з подібними проблемами, посилання:Вхід за гіперпосиланням видно.
Згідно з відповідями користувачів мережі, намагайтеся збільшити--disable-parallelПаралелізм параметрів вимкнений, змінений наступним чином:
Відкриття все одно з'являтимутьсяSystem.TimeoutExceptionОскільки це тайм-аут для відновлення тайм-ауту пакета nuget, чому ми не можемо змінити джерело? Рішуче замінений джерелом Tencent з таким посиланням:
Модифікуйте файл Dockerfile, видаляйте стандартний nuget.org і додайте вихідний код Tencent Cloud, наступним чином:
НарештіУспішно упакований у образ docker, відновлення пакету nuget зайняло 22 секунди, проблеми тайм-ауту немає, як показано на рисунку нижче:
(Кінець)
|