@neoskop/dockerfile.js
TypeScript icon, indicating that this package has built-in type declarations

0.7.0 • Public • Published

@neoskop/dockerfile.js

Write configurable, scriptable, reusable dockerfiles in Typescript or plain Javascript.

Master
Travis master Test coverage master

Develop
Travis develop Test coverage develop

Usage

CLI

dockerfile-js dockerfile.ts Generates the dockerfile
dockerfile-js dockerfile.ts | docker build -f - . Build a docker image from the generated dockerfile

Typescript:

import { dockerfile, stage, image, run } from "@neoskop/dockerfile.js";

export default dockerfile().stages(
    stage().from(image('node'))
           .commands(
               run('node --version')
            )
);

Javascript:

const { dockerfile, stage, image, run } = require("@neoskop/dockerfile.js");

module.exports = dockerfile().stages(
    stage().from(image('node'))
           .commands(
               run('node --version')
            )
);

Static, factory and async factory export possible.

export default dockerfile().stages(...);
export default () => dockerfile().stages(...);
export default async () => dockerfile().stages(...);

module.exports = dockerfile().stages(...);
module.exports = () => dockerfile().stages(...);
module.exports = async () => dockerfile().stages(...);

Documentation

See Dockerfile Reference for general dockerfile usage. Documentation for dockerfile.js not yet available. Look at the sources for usage details.

Commands

Misc

Testing

This package uses Jest with the ts-jest extension for testing. The following test commands are available

yarn test Single test run
yarn test:watch Reruns the tests on file changes
yarn test:cov Generates a coverage report
yarn test:debug Start the test in debug mode

Versioning

This package follows SemVer and uses @neoskop/flow-bump for versioning.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Package Sidebar

Install

npm i @neoskop/dockerfile.js

Weekly Downloads

75

Version

0.7.0

License

MIT

Unpacked Size

95.7 kB

Total Files

56

Last publish

Collaborators

  • hannoversche
  • pazulay
  • jmetzger
  • mjablonski
  • hevers
  • nicolasknop
  • tlaser
  • draconisnoctis
  • joshuaga
  • neotorben