#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