在 OS X 上使用 Docker 将 Gitlab CI 运行器作为服务运行

在 OS X 上使用 Docker 将 Gitlab CI 运行器作为服务运行

我有一台 Mac Pro 2012 (OS X 10.11),用作服务器,安装了适用于 OS X 的 Docker 和官方的 gitlab CI 运行器,如下所示https://docs.gitlab.com/runner/install/osx.html

一切都很好,除了一件事:每次重启后我都必须使用自己的用户帐户登录并保持登录状态,以便 Docker 和 gitlab 运行器能够真正运行。

如何让 Docker 和 gitlab CI 运行器独立于任何登录的用户运行?

答案1

在这种情况下,您可能需要将 Docker 和 GitLab 作为系统范围的 LaunchDaemon 启动,而不是像当前那样(作为用户特定的 LaunchAgent)启动。有关差异的更多信息,请参阅此处: https://apple.stackexchange.com/questions/290945/what-are-the-differences-between-launchgents-and-launchdaemons

请注意,LaunchDaemons 无法启动图形应用程序,此处解释如下: http://www.grivet-tools.com/blog/2014/launchdaemons-vs-launchagents/

但请注意,正如我所发现的,如果您为用户使用 FileVault(磁盘加密),那么该用户的文件只有在该用户登录后才可访问。如果您使用全盘加密,那么至少有一个人登录后,可能才可以访问任何文件。

相关内容