【问题标题】:How to downgrade version of docker used by docker-machine and boot2docker?如何降级 docker-machine 和 boot2docker 使用的 docker 版本?
【发布时间】:2018-11-29 21:55:03
【问题描述】:

我在 OS:X 上使用 docker-machine。我想将 Docker 1.11.2 安装到我的 boot2docker 机器中,但是看起来 docker-machine 和 boot2docker 的组合总是在拉取最新版本的boot2docker

我尝试用手动下载的匹配 1.11.2 的 iso 替换 ~/.docker/machine/machines/default/boot2docker.iso,但这似乎并没有真正改变 docker 的版本。

我没有看到anything listed in docker-machine documentation,这表明可以在创建虚拟机时指定要使用的 ISO 或 docker 版本。我正在使用 VirtualBox 作为驱动程序。

如何降级安装在我的虚拟机中的 docker 版本或创建一个安装了特定版本的新版本?

【问题讨论】:

  • 不确定,但当新的 Beta 版发布时,他们可能会摆脱它。如果你想要更多的控制权,你最好使用 Vagrant(或类似的)。

标签: docker docker-machine


【解决方案1】:

创建新机器时,可以使用--virtualbox-boot2docker-url 选项指定从何处获取 boot2docker ISO。这样做时,它将避免将机器升级到最新版本。

例子:

docker-machine create \
  --driver virtualbox \
  --virtualbox-memory 6144 \
  --virtualbox-hostonly-cidr "10.10.10.1/24" \
  --virtualbox-cpu-count "2" \
  --virtualbox-disk-size "20000" \
  --virtualbox-boot2docker-url https://github.com/boot2docker/boot2docker/releases/download/v1.12.2/boot2docker.iso \
  default

【讨论】:

    【解决方案2】:

    看来要完全降级 docker-machine 需要两个步骤。

    首先,下载并替换位于~/.docker/machine/cache/boot2docker.isoboot2docker.iso 文件。当你创建一个新的 docker-machine 时,它​​默认使用缓存的 iso。需要手动将其替换为whatever version iso you want

    这将导致 docker-machine 使用适当版本的 docker 创建 VM。

    但是,您还需要下载新版本的docker toolbox 以便客户端也可以使用旧版本。我不确定如何导航到比链接 (1.11.2) 更旧的版本,但您可以将下载 url 更改为您想要的任何版本,而且其中一些似乎仍在托管。

    【讨论】:

    • 不默认使用缓存版本。
    • @ramblingpolak 你必须做 docker-machine create,而不是 docker-machine upgrade。
    • docker-machine create 仍将升级。 ``` cp ~/Downloads/boot2docker.iso ~/.docker/machine/cache/ docker-machine create --driver virtualbox default Running pre-create checks...(默认)默认 Boot2Docker ISO 已过期,正在下载最新版本...(默认) github.com/boot2docker/boot2docker 的最新版本是 v1.12.1(默认)从github.com/boot2docker/boot2docker/releases/download/v1.12.1/… 下载 /Users/user/.docker/machine/cache/boot2docker.iso... ```
    【解决方案3】:

    运行以下步骤:

    1. 检查您的 docker 版本: $ docker -v Docker version 18.03.0-ce, build 0520e24

    2. here 下载你的 docker 版本的 boot2docker (18.03.0-ce) 到你的本地: wget https://github.com/boot2docker/boot2docker/releases/download/v18.03.0-ce/boot2docker.iso -P ~/.docker/machine/cache/test/boot2docker-v18-03-0-ce.iso

    3. 使用下载的boot2docker 版本创建new_virtual_box_name docker-machine create --driver virtualbox --virtualbox-boot2docker-url ~/.docker/machine/cache/test/boot2docker-v18-03-0-ce.iso new_virtual_box_name

    【讨论】:

      猜你喜欢
      • 2015-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多