mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Merge branch 'master' of ssh://github.com/dotcloud/docker
This commit is contained in:
commit
17235eb089
3 changed files with 42 additions and 0 deletions
16
Vagrantfile
vendored
16
Vagrantfile
vendored
|
@ -5,11 +5,13 @@ BOX_NAME = ENV['BOX_NAME'] || "ubuntu"
|
||||||
BOX_URI = ENV['BOX_URI'] || "http://files.vagrantup.com/precise64.box"
|
BOX_URI = ENV['BOX_URI'] || "http://files.vagrantup.com/precise64.box"
|
||||||
AWS_REGION = ENV['AWS_REGION'] || "us-east-1"
|
AWS_REGION = ENV['AWS_REGION'] || "us-east-1"
|
||||||
AWS_AMI = ENV['AWS_AMI'] || "ami-d0f89fb9"
|
AWS_AMI = ENV['AWS_AMI'] || "ami-d0f89fb9"
|
||||||
|
FORWARD_DOCKER_PORTS = ENV['FORWARD_DOCKER_PORTS']
|
||||||
|
|
||||||
Vagrant::Config.run do |config|
|
Vagrant::Config.run do |config|
|
||||||
# Setup virtual machine box. This VM configuration code is always executed.
|
# Setup virtual machine box. This VM configuration code is always executed.
|
||||||
config.vm.box = BOX_NAME
|
config.vm.box = BOX_NAME
|
||||||
config.vm.box_url = BOX_URI
|
config.vm.box_url = BOX_URI
|
||||||
|
config.vm.forward_port 4243, 4243
|
||||||
|
|
||||||
# Provision docker and new kernel if deployment was not done
|
# Provision docker and new kernel if deployment was not done
|
||||||
if Dir.glob("#{File.dirname(__FILE__)}/.vagrant/machines/default/*/id").empty?
|
if Dir.glob("#{File.dirname(__FILE__)}/.vagrant/machines/default/*/id").empty?
|
||||||
|
@ -70,3 +72,17 @@ Vagrant::VERSION >= "1.1.0" and Vagrant.configure("2") do |config|
|
||||||
config.vm.box_url = BOX_URI
|
config.vm.box_url = BOX_URI
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if !FORWARD_DOCKER_PORTS.nil?
|
||||||
|
Vagrant::VERSION < "1.1.0" and Vagrant::Config.run do |config|
|
||||||
|
(49000..49900).each do |port|
|
||||||
|
config.vm.forward_port port, port
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
Vagrant::VERSION >= "1.1.0" and Vagrant.configure("2") do |config|
|
||||||
|
(49000..49900).each do |port|
|
||||||
|
config.vm.network :forwarded_port, :host => port, :guest => port
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
|
@ -658,6 +658,10 @@ func (srv *Server) ImageImport(src, repo, tag string, in io.Reader, out io.Write
|
||||||
|
|
||||||
func (srv *Server) ContainerCreate(config *Config) (string, error) {
|
func (srv *Server) ContainerCreate(config *Config) (string, error) {
|
||||||
|
|
||||||
|
if config.Memory != 0 && config.Memory < 524288 {
|
||||||
|
return "", fmt.Errorf("Memory limit must be given in bytes (minimum 524288 bytes)")
|
||||||
|
}
|
||||||
|
|
||||||
if config.Memory > 0 && !srv.runtime.capabilities.MemoryLimit {
|
if config.Memory > 0 && !srv.runtime.capabilities.MemoryLimit {
|
||||||
config.Memory = 0
|
config.Memory = 0
|
||||||
}
|
}
|
||||||
|
|
|
@ -147,3 +147,25 @@ func TestCreateStartRestartStopStartKillRm(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestRunWithTooLowMemoryLimit(t *testing.T) {
|
||||||
|
runtime, err := newTestRuntime()
|
||||||
|
srv := &Server{runtime: runtime}
|
||||||
|
if err != nil {
|
||||||
|
t.Fatal(err)
|
||||||
|
}
|
||||||
|
defer nuke(runtime)
|
||||||
|
// Try to create a container with a memory limit of 1 byte less than the minimum allowed limit.
|
||||||
|
_, err = srv.ContainerCreate(
|
||||||
|
&Config{
|
||||||
|
Image: GetTestImage(runtime).ID,
|
||||||
|
Memory: 524287,
|
||||||
|
CpuShares: 1000,
|
||||||
|
Cmd: []string{"/bin/cat"},
|
||||||
|
},
|
||||||
|
)
|
||||||
|
if err == nil {
|
||||||
|
t.Errorf("Memory limit is smaller than the allowed limit. Container creation should've failed!")
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue