Method: Docker::Image.create

Defined in:
lib/docker/image.rb

.create(opts = {}, creds = nil, conn = Docker.connection, &block) ⇒ Object

Create a new Image.



119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# File 'lib/docker/image.rb', line 119

def create(opts = {}, creds = nil, conn = Docker.connection, &block)
  credentials = creds.nil? ? Docker.creds : MultiJson.dump(creds)
  headers = credentials && Docker::Util.build_auth_header(credentials) || {}
  body = ''
  conn.post(
    '/images/create',
    opts,
    :headers => headers,
    :response_block => response_block(body, &block)
    )
  # NOTE: see associated tests for why we're looking at image#end_with?
  image = opts['fromImage'] || opts[:fromImage]
  tag = opts['tag'] || opts[:tag]
  image = "#{image}:#{tag}" if tag && !image.end_with?(":#{tag}")
  get(image, {}, conn)
end