SQL Server 2014 SP2 не запускается в Windows Docker

Я хочу установить и использовать SQL Server 2014 SP2 в Windows Docker. Но служба SQL Server не запускается.

Действия по воспроизведению:

  1. Загрузите англоязычную версию Microsoft SQL Server 2014 с пакетом обновления 2 (SP2) Express по адресу https://www.microsoft.com/en-US/download/details.aspx?id=53167.
  2. Запустите «SQLEXPR_x64_ENU.exe», извлеките его в папку «SQLEXPR_x64_ENU» и отмените установку.
  3. Напишите Dockerfile, как показано ниже.
  4. Выполните «docker build -t sample.».
  5. Выполните «docker run --name sample -i --rm sample».

Докерфайл:

FROM microsoft/windowsservercore
MAINTAINER [email protected]
COPY SQLEXPR_x64_ENU C:/SQLEXPR_x64_ENU/
WORKDIR C:/SQLEXPR_x64_ENU/
RUN SETUP.EXE /q /ACTION=Install /INSTANCENAME=MSSQLSERVER /FEATURES=SQLEngine /UPDATEENABLED=0 /SQLSVCACCOUNT="NT Service\MSSQLSERVER" /SQLSYSADMINACCOUNTS="foobar" /TCPENABLED=1 /NPENABLED=0 /IACCEPTSQLSERVERLICENSETERMS
CMD [ "powershell" ]

Хост-среда — Windows 10 Creators Update.

В файле журнала (C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Log\ERRORLOG) отображаются некоторые сообщения об ошибках:

2017-09-29 18:47:24.31 spid15s     Error: 17182, Severity: 16, State: 1.
2017-09-29 18:47:24.31 spid15s     TDSSNIClient initialization failed with error 0x5, status code 0x51. Reason: Unable to configure MDAC-compatibility Named Pipes protocol pipe name in registry. Access is denied.
2017-09-29 18:47:24.31 spid15s     Error: 17182, Severity: 16, State: 1.
2017-09-29 18:47:24.31 spid15s     TDSSNIClient initialization failed with error 0x5, status code 0x1. Reason: Initialization failed with an infrastructure error. Check for previous errors. Access is denied.
2017-09-29 18:47:24.31 spid15s     Error: 17826, Severity: 18, State: 3.
2017-09-29 18:47:24.31 spid15s     Could not start the network library because of an internal error in the network library. To determine the cause, review the errors immediately preceding this one in the error log.
2017-09-29 18:47:24.31 spid15s     Error: 17120, Severity: 16, State: 1.
2017-09-29 18:47:24.31 spid15s     SQL Server could not spawn FRunCommunicationsManager thread. Check the SQL Server error log and the Windows event logs for information about possible related problems.

Если я передам "NT AUTHORITY\System" параметру "/SQLSVCACCOUNT", служба SQL-сервера запустится правильно. Но я хочу использовать "NT Service\MSSQLSERVER" из соображений безопасности. Как я могу использовать SQL Server 2014 SP2 с «NT Service\MSSQLSERVER»?

Обновление: 02.10.2017, 14:43 JST Если я сдаю "NT Service\MSSQLSERVER" -> Если я сдаю "NT AUTHORITY\System"


person nodchip    schedule 02.10.2017    source источник
comment
тогда вам нужно будет предоставить NT Service\MSSQLSERVER разрешения?   -  person TheGameiswar    schedule 02.10.2017
comment
@TheGameiswar Да, мне нужно предоставить разрешения NT Service\MSSQLSERVER. Я отредактировал формулировку вопроса.   -  person nodchip    schedule 02.10.2017