docker命令的自动化
我想实现docker命令的自动化 我可以验证docker命令以验证其合理性docker命令的自动化,docker,boot2docker,Docker,Boot2docker,我想实现docker命令的自动化 我可以验证docker命令以验证其合理性 我只需要知道是否有任何插件可用于此目的,或者是否必须从头开始使用哪种语言编写?最初如何启动?如果您正在寻找一种使用Docker自动创建和配置VM的方法,那么您应该看看Vagrant(可能还有Puppet) 流浪汉 Vagrant是创建虚拟机的工具。你可以在这里找到它。它的工作原理基本上是这样的:您可以安装Vagrant和类似VirtualBox的VM。然后创建一个名为Vagrantfile的文件,该文件描述您的VM。对于
我只需要知道是否有任何插件可用于此目的,或者是否必须从头开始使用哪种语言编写?最初如何启动?如果您正在寻找一种使用Docker自动创建和配置VM的方法,那么您应该看看Vagrant(可能还有Puppet) 流浪汉 Vagrant是创建虚拟机的工具。你可以在这里找到它。它的工作原理基本上是这样的:您可以安装Vagrant和类似VirtualBox的VM。然后创建一个名为Vagrantfile的文件,该文件描述您的VM。对于我的Docker环境,我使用的文件如下所示:
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "99designs/ubuntu-saucy-docker"
config.vm.box_url = "https://vagrantcloud.com/99designs/ubuntu-saucy-docker/version/2/provider/virtualbox.box"
config.vm.network :forwarded_port, guest: 8080, host: 8080
config.vm.network :forwarded_port, guest: 4243, host: 4243
config.vm.network :forwarded_port, guest: 9000, host: 9000
config.vm.network :forwarded_port, guest: 5000, host: 5000
config.vm.synced_folder ".", "/vagrant", :mount_options => ["dmode=777","fmode=777"]
config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--memory", "2024"]
vb.customize ["modifyvm", :id, "--cpus", "2"]
end
config.vm.provision "shell", path: "add_docker_to_sudo.sh"
config.vm.provision "shell", path: "disable_friewall.sh"
config.vm.provision "shell", path: "set_nls_lang.sh"
end
该文件描述了您的虚拟机。它定义安装到虚拟机的映像(可能是boot2docker映像)、打开的端口、虚拟机中可用的主机文件夹等。它还可以定义在VM启动时运行的脚本。在我的示例中,当VM启动时,我运行三个shell脚本,将Docker添加到sudo,禁用防火墙(哈哈哈),并设置所需的环境变量。你可以在这里做任何事。如果shell命令不够,请查看(例如)Puppet()
您只需调用
vagrant up
来创建虚拟机,然后调用vagrant ssh
来访问它。您可以随时销毁它并重新创建它。您知道Docker文件可以自动生成Docker映像吗?我的目标是完成从Ubuntu vm创建开始的命令,然后在创建的vm上安装Docker,运行映像等。,一次拍摄多个场景…感谢提供非常有用的信息。顺便说一句,你有没有尝试过在node.js框架中做同样的事情,只是一个随机的想法和不同的方法?在node.js中是否可行?Vagrant也是用Ruby编写的,所以语法就是Ruby。我不知道任何使用Node.js的替代方案。