Ошибка при запуске eShopOnContainers с использованием Docker и WSL2 в Windows 10 Home: «src_sqldata_1 завершается с кодом 255»

#c# #.net #sql-server #docker #wsl-2

#c# #.net #sql-сервер #docker #wsl-2

Вопрос:

Когда я пытаюсь запустить eShopOnContainers с использованием Docker и WSL2 в Windows 10 Home, я сталкиваюсь с этой ошибкой:

 src_sqldata_1 exited with code 255
  

Вот некоторые из сообщений об ошибках в Docker:

 2020-09-30 09:47:22.45 spid3s      Starting up database 'msdb'.

2020-09-30 09:47:22.48 spid3s      Error: 17204, Severity: 16, State: 1.

2020-09-30 09:47:22.48 spid3s      FCB::Open failed: Could not open file d:dbsshsqfs0612_201659cmd1robjx64retailsqlmkmastrdatabasesmkmastr.projMSDBData.mdf for file number 1.  OS error: 2(The system cannot find the file specified.).

2020-09-30 09:47:22.54 spid3s      Error: 5120, Severity: 16, State: 101.

2020-09-30 09:47:22.54 spid3s      Unable to open the physical file "d:dbsshsqfs612_201659cmd1robjx64retailsqlmkmastrdatabasesmkmastr.projMSDBData.mdf". Operating system error 2: "2(The system cannot find the file specified.)".

2020-09-30 09:47:22.60 spid3s      Error: 17207, Severity: 16, State: 1.

2020-09-30 09:47:22.60 spid3s      FileMgr::StartLogFiles: Operating system error 2(The system cannot find the file specified.) occurred while creating or opening file 'd:dbsshsqfs0612_201659cmd1robjx64retailsqlmkmastrdatabasesmkmastr.projMSDBLog.ldf'. Diagnose and correct the operating system error, and retry the operation.

2020-09-30 09:47:22.68 spid3s      File activation failure. The physical file name "d:dbsshsqfs612_201659cmd1robjx64retailsqlmkmastrdatabasesmkmastr.projMSDBLog.ldf" may be incorrect.

2020-09-30 09:47:23.96 spid8s      Starting up database 'mssqlsystemresource'.

2020-09-30 09:47:24.01 spid8s      The resource database build version is 14.00.3335. This is an informational message only. No user action is required.

2020-09-30 09:47:24.11 spid8s      Starting up database 'model'.

2020-09-30 09:47:24.13 spid8s      Error: 17204, Severity: 16, State: 1.

2020-09-30 09:47:24.13 spid8s      FCB::Open failed: Could not open file d:dbsshsqfs0612_201659cmd1robjx64retailsqlmkmastrdatabasesmkmastr.projmodel.mdf for file number 1.  OS error: 2(The system cannot find the file specified.).
  

Я также попытался запустить только sqldata контейнер, используя docker-compose up sqldata , как было предложено @mvelosop здесь, но я получаю ту же ошибку:

 2020-09-30 12:30:51.53 spid19s     SQL Server is now ready for client connections. This is an informational message; no user action is required.
2020-09-30 12:30:51.60 spid7s      File activation failure. The physical file name "d:dbsshsqfs612_201659cmd1robjx64retailsqlmkmastrdatabasesmkmastr.projmodellog.ldf" may be incorrect.
2020-09-30 12:30:51.64 spid7s      Error: 945, Severity: 14, State: 2.
2020-09-30 12:30:51.64 spid7s      Database 'model' cannot be opened due to inaccessible files or insufficient memory or disk space.  See the SQL Server errorlog for details.
2020-09-30 12:30:51.68 spid7s      SQL Trace was stopped due to server shutdown. Trace ID = '1'. This is an informational message only; no user action is required.
src_sqldata_1 exited with code 255
  

Вот ресурсы компьютера, которые он использовал, когда я пытался запустить sqldata только контейнер.

изображение

На этом изображении вы можете видеть, что у меня осталось много доступной оперативной памяти.

У меня также осталось много места на диске .. более 100 ГБ на обоих дисках C и D.

Пожалуйста, помогите. Я еще не очень хорошо знаком с WSL и Docker.

Большое вам спасибо.

Ответ №1:

У меня была аналогичная проблема при запуске mysql в docker. Несколько вещей, которые следует принять во внимание:

 1. Increase the memory allocation of docker. 
   You can do it easily using docker desktop dashboard.
2. Run the docker-compose with an admin access.
       For an example: sudo docker-compose -f mysql.docker-compose.yml up -d
  

Пункт 2 выше устранит проблему с недоступными файлами.

Выше я сделал это на своем MacBook pro 11.5.1