如何在Ubuntu 16.04上运行具有实验功能的docker

Kam*_*ski 18 docker ubuntu-16.04

我有以下问题:

如何docker build --squash=true...在ubuntu 16.04 上运行具有实验性功能的docker(如图像压缩以减小它的大小)?

Kam*_*ski 50

要打开实验泊坞窗功能,请按以下方式创建以下文件:

sudo nano /etc/docker/daemon.json

并在其中添加以下内容

{ 
    "experimental": true 
} 
Run Code Online (Sandbox Code Playgroud)

并保存文件(通过CTRL + X和Enter)并退出.在终端类型:

sudo service docker restart

要检查实验功能是否为ON,请输入终端:

docker version

你应该看到 Experimental: true

UPDATE

而不是纳米,你可以使用这个单线:

echo $'{\n    "experimental": true\n}' | sudo tee /etc/docker/daemon.json;
Run Code Online (Sandbox Code Playgroud)

  • 仅供参考-要为客户端启用此功能,要创建的配置文件是“~/.docker/config.json”,值为“enabled”,而不是“true” (9认同)
  • 请注意单线更新的局限性:它试图“追加”,但是如果您实际上已经有一个配置文件,它将破坏文件格式。 (2认同)

pet*_*ron 14

我在我的 mac 上的 Ubuntu 18.04 VM 上尝试了这里的所有内容 - 没有任何效果。整个互联网都在说同样的话,但最终开启实验的一件事是@Michael Haren的小回答:

仅供参考 - 要为客户端启用此功能,要创建的配置文件为~/.docker/config.json,值为"enabled",而不是true

这对我来说意味着这样的事情:

$ mkdir ~/.docker
$ echo '{ "experimental": "enabled" }' > ~/.docker/config.json
$ sudo systemctl restart docker
$ docker version
  ...
  Experimental: true
  ...
Run Code Online (Sandbox Code Playgroud)

这应该是顶级答案。所以,归功于他们(除了对我来说甜蜜的互联网业力点......)。


Her*_*oCC 6

如果您只想临时运行它/不修改文件,您可以export DOCKER_CLI_EXPERIMENTAL=enabled. 下面为您的客户端打开实验模式。

$ docker version
 Experimental:      false
$ export DOCKER_CLI_EXPERIMENTAL=enabled
$ docker version
 Experimental:      true
Run Code Online (Sandbox Code Playgroud)