在Windows上以无需登录用户的方式运行Docker容器

61次阅读
没有评论

问题描述

在Windows服务器上希望能够在不登录用户的情况下运行Docker容器。目前,用户的设置是通过一个通用的服务帐户登录,以确保容器运行且Docker守护程序保持运行状态。虽然当前的设置可以正常工作,但用户认为应该有更好的部署/运行方式,而不必始终保持一个帐户登录。

当前环境设置:
– Windows Server 2012和2016
– 由于嵌套虚拟化需求,无法使用docker-desktop
– 由于业务需求,Linux不是一个选项

解决方案

请注意以下操作注意版本差异及修改前做好备份。

方案1:将Docker设置为服务

将Docker设置为Windows服务是一种解决方案,这样就可以绕过需要使用服务帐户登录的需求。下面是一组步骤,将Docker配置为Windows服务。

  1. 打开命令行终端,以管理员身份运行命令提示符。

  2. 运行以下命令来注册Docker作为Windows服务:

dockerd.exe --register-service
  1. 启动Docker服务:
net start Docker
  1. 将Docker服务设置为自动启动:
sc config Docker start=auto

这些操作将使Docker守护程序成为一个Windows服务,并且在系统启动时自动启动。这样就不再需要手动登录特定的用户帐户来保持Docker运行状态。

提示:你可以在Docker GitHub页面找到有关dockerd.exe的更多信息。

方案2:使用第三方工具

另一种解决方案是使用第三方工具,这些工具可以帮助你在Windows上以服务方式运行Docker守护程序,而无需手动登录用户帐户。一个这样的工具是AlwaysUp

这些工具通常提供了更灵活的配置选项,适用于特定的部署需求,可以帮助你更好地管理Docker在Windows上的运行方式。

注意:使用第三方工具可能需要付费,你可以根据自己的需求和预算选择适合的解决方案。

无论你选择哪种解决方案,都能够在Windows服务器上以无需登录用户的方式运行Docker容器,从而提高部署的便利性和效率。

正文完