Socket
Book a DemoInstallSign in
Socket

build-docker-image-from-tarball

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

build-docker-image-from-tarball

Take a path to a tarball image and build that tarball into a docker image

0.1.0
latest
npmnpm
Version published
Weekly downloads
1
Maintainers
1
Weekly downloads
 
Created
Source

Build From Tarball

Module that takes a path to a git archive tarball and uses heroku-style buildpackg to build the repo into a docker image.

NPM Dependency Status

Requirements

You will need the following installed. To get started you can use the supplied vagrant file which automatically installs docker and node.js on startup

Docker

The docker daemon must be installed and running. Visit https://docker.io for instructions on installing docker

Buildstep base image

A valid buildstep base docker image must be available in the list of docker images. There is an image available in the public docker index that will work if you do not wish to build your own

docker pull nisaacson/buildstep

# optionally tag this image with your own name
# docker tag nisaacson/buildstep foo_buildstep

Installation

npm install -S build-docker-image-from-tarball

Usage

Specfiy the following

  • sourcePath: /path/to/git/archive.tar.gz
  • buildImageName: buildstep base image that containers the builder script and heroku buildpacks
  • repo foo the name of the image that will be built and appear in docker images once the build completes
var buildFromTarball = require('build-from-tarball')
var data = {
  sourcePath: '/path/to/git/archive.tar.gz',
  buildImage: 'foo_buildstep',
  destImageName: 'foo_app'
}

buildFromTarball(data, function(err) {
  if (err) {
    console.dir('failed to build docker image from git archive tarball', err)
    return
  }
  console.log('image built correctly. You should now see the image %s when you execute `docker images`', data.destImageName)
})

Since the build progress is quite long, you may wish to monitor the progress of the build as it progresses. To monitor the progress, the builder is an instance of EventEmitter that emits log events instead of spamming stdout.

var Builder = require('build-from-tarball')
var data = {
  sourcePath: '/path/to/git/archive.tar.gz',
  buildImage: 'foo_buildstep',
  repo: 'foo_app'
}
var builder = new Builder()

// emit log events to avoid spamming stdout
builder.on('log', function(log) {
  console.dir(log)
})

builder.build(data, completeHandler)

Tests

# create the default VM
vagrant up
# log into the VM via ssh
vagrant ssh
# navigate to the repo root directory
cd /vagrant
# install development dependencies
npm install
# run the tests
npm test

Keywords

docker

FAQs

Package last updated on 13 Aug 2013

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.