docker - 如何打包 Vagrant/虚拟盒子虚拟机以加载到另一个系统

标签 docker vagrant virtualbox vagrantfile

我有一个无所事事的VM,我想创建一个镜像,可以将其带到另一台计算机上,然后像以前一样使用所有设置启动VM。

我尝试从Virtual Box中执行export applianceimport appliance,并且能够启动VM,不要流浪汉,所以我无法使用vagrant ssh进入ssh,并且在VM中,我在docker中运行Web服务器并且无法连接到它。 docker容器确实启动了,但我无法连接到。

创建vagrant / VirtualBox / Docker环境的镜像以便使整个系统都可以移动的正确方法是什么?

最佳答案

如果要使用vagrant ssh,将始终需要Vagrant和VirtualBox安装。它们都是独立的软件。 Vagrant用于使用在线可用镜像自动创建VM。

这使得仅提供源代码和配置脚本变得更加容易。当执行vagrant up时,它会在线下载基本框,您的配置脚本会进行必要的设置。避免共享400MB以上的大型存储箱

当您导出VM并将其导入其他地方时,就不需要这样的流浪ssh。盒子的设置将设置一些端口转发。假设来自guest的22映射到主机上的2222,则可以使用此命令直接ssh

ssh -p 2222 vagrant@127.0.0.1

或者,如果您启用了具有静态IP的仅主机网络,则可以使用
ssh vagrant@192.168.33.100

PS:密码也为vagrant

关于docker - 如何打包 Vagrant/虚拟盒子虚拟机以加载到另一个系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45851191/

相关文章:

docker - 带有外部 nginx 和综合的 gitlab docker 注册表

node.js - mime.lookup 不是在 docker 内运行的expressjs中的函数

node.js - 通过 bash 使用 npm 在 vagrant guest 上安装 gulp

ruby - 在 Manjaro Deepin 中安装 Vagrant 插件时出错

java - 在java中解析vagrant文​​件

dns - Homestead Vagrant Virtualbox 无法解析 guest 操作系统内的 DNS

linux - centos docker镜像在gitlab docker runner上不起作用

virtual-machine - VT-x 不可用且 Windows 10 上没有 Hyper-V 管理器

vagrant - 执行 `VBoxManage` 时出错(vagrant/virtualbox)

docker - 特权容器是否遵守CPU限制