代码之家  ›  专栏  ›  技术社区  ›  Lucas

可以在Docker for Windows中自动打开Kubernetes功能吗?

  •  0
  • Lucas  · 技术社区  · 6 年前

    我正在做一个 ansible based dev-bootstrap project . 我希望能够 enable the kubernetes docker role ,但我似乎找不到这样做的方法。我在登记处找过 docker kubernetes ,没有跳出。我还检查了 daemon.json ,但即使启用了kubernetes(手动),也不存在。有人知道有没有办法做到这一点吗?

    1 回复  |  直到 6 年前
        1
  •  1
  •   CJ Harmath    6 年前

    不确定这是否是您所需要的全部,但是当切换enable kubernetes选项时,它会写入settings.json。还有一个kubernetes的初始安装步骤,所以这可能还不够,但我会尝试看看它是否会启动,需要重新启动或根本不工作…

    function Enable-DockerKubernetes {
        [CmdletBinding()]
        param ()
        try {
            $settings = "$env:AppData\Docker\settings.json"
            $dockerSettings = ConvertFrom-Json ( Get-Content $settings  -Raw -ErrorAction Stop)
            if (!$dockerSettings.KubernetesEnabled) {
                Write-Verbose ("Enabling Kubernetes in {0}." -f $settings)
                $dockerSettings.KubernetesEnabled = $true
                $dockerSettings | ConvertTo-Json | Set-Content $settings -ErrorAction Stop 
            }
            else {
                Write-Verbose "Already enabled!"
            }
        }
        catch {
            Write-Error $_
        }
    }
    

    Docker CE的安装程序似乎不支持根据这个问题传入安装程序选项,这个问题刚刚过时并关闭。

    您可能希望打开一个新的问题,特别是关于这个用例。

    https://github.com/docker/for-win/issues/1322