simple-container

1.1.2 • Public • Published

Simple Container

NPM Build Status Codacy Badge Codacy Coverage Badge Gitter Badge

Simple and fast work with the Docker container. Works great in Travis CI for testing

It uses the library dockerode.

Installation

npm install --save simple-container

Using

A simple example that creates and starts a container:

import Containers from 'simple-container';
 
var containers = new Containers();
 
containers.create('hello-world:latest').then(container => {
    console.info(`The ${container.id} container was created.`);
    start(container);
});
 
/* Run the created container */
function start(container) {
    container.start().then(() => {
        console.info(`The ${container.id} container is running.`);
    });
}

Remote connection

By default, the local service is used.

For example, if you want to use connection settings:

var containers = new Containers({
    host: '127.0.0.1',
    port: 3000
});

Examples and details in the documentation.

Creating a container

You can create a container in two ways.

A simple way - to specify the name of the image:

containers.create('hello-world:latest');

Another way - to provide an object with parameters:

containers.create({
    Image: 'postgres:alpine',
    Env: ['POSTGRES_PASSWORD = password'],
    Ports: [{
        IP: '0.0.0.0',
        PrivatePort: 5432,
        PublicPort: 5432,
        Type: 'tcp'
    }]
});

Examples and details in the documentation.

Third-party repository

An additional example of obtaining a private image:

var auth = {
    serveraddress: 'https://index.docker.io/v1',
    email: 'email@example.org',
    username: 'username',
    password: 'password',
    auth: ''
};
 
containers.create({
    Image: 'project:latest',
    authconfig: auth
});

Details in the documentation.

API

create(options)Promise

Creates a container by options or name, returning the management interface.

get([id])Promise

Returns the container management interface.

info([id])Promise

Searches in existing containers.

create(options) ⇒ Promise

Creates a container by options or name, returning the management interface.

Param Type Description
options String \ Object The name of the image or options

get([id]) ⇒ Promise

Returns the container management interface.

Param Type Description
[id] String Container ID

Examples:

containers.get().then(containers => {
    /* containers - All containers in the system */
});
 
containers.get('5520e855dd2c301b23a718cf392f9619d1edc3dc0fa294559b725d7588ca807f').then(container => {
    /* container - The specified container */
});

info([id]) ⇒ Promise

Searches in existing containers.

Param Type Description
[id] String Container ID

Examples:

containers.info().then(containers => {
    /* containers - All containers in the system */
});
 
containers.info('21ae4a54be582d13fffd796341b3561a8c8e0c59dd6c6c3239529188e2b3321d').then(container => {
    /* container - The specified container */
});

License

JavaScript Style Guide

MIT. Copyright (c) Valentin Popov.

Package Sidebar

Install

npm i simple-container

Weekly Downloads

2

Version

1.1.2

License

MIT

Last publish

Collaborators

  • valentineus