Мой windows сервис в изображении не может автоматически запускаться при запуске контейнера - PullRequest
0 голосов
/ 01 марта 2020

Пожалуйста, помогите мне, я создал сервер образа windows с сервисом windows внутри из do tnet -framework- docker в качестве базового образа. Я установил (-StartupType Automati c) для этой службы, но когда контейнер подключен к сети, служба не запускается. Вот команда в Dockerfile

New-Service -Name $service_name -DisplayName $service_display_name -Description 'Domain Handlers' -BinaryPathName $service_path -StartupType Automatic

, а здесь - статус службы, которую я получил из запущенного контейнера.

ExitCode  : 0
Name      : Project-Dev
ProcessId : 0
StartMode : Auto
State     : Stopped
Status    : OK

У меня также есть два решения. Во-первых, я думаю, что могу сделать скрипт и настроить его запуск в ENDTRYPOINT или CMD, этот скрипт запустит службу, когда контейнер будет в сети. Во-вторых, я увидел, что служба работает с разрешениями локальной системы, и слышал о LocalService и NetworkService, поэтому вопрос заключается в том, что если моя служба работает под локальной или сетевой службой, то она может запускаться автоматически? (Я думал о разрешении, возможно, служба не может запуститься из-за разрешения) Итак, пожалуйста, помогите мне выбраться из этого материала

1 Ответ

0 голосов
/ 08 марта 2020

Я исправил проблему, создав сценарий onboot.service.ps1 и установив его на ENTRYPOINT в файле Docker.

ENTRYPOINT ["powershell.exe", "C:\\Docker_onboot.services.ps1"]

Содержимое этого сценария:

Start-Service -Name 'ServiceName'

Я запускаю контейнер внутри Amazone ECS.

Надеюсь, что это полезно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...