composerize
v1.7.1
Published
[](https://travis-ci.com/github/magicmark/composerize) [](https://www.npmjs.com/package/composerize) [;
const dockerRunCommand = 'docker run -d -p 8080:80 --name my-web-app nginx:latest';
// Convert the Docker run command to a Docker Compose configuration
const composeConfig = convertDockerRunToCompose(dockerRunCommand);
console.log(composeConfig);
You can also merge docker run command(s) with an existing Docker Compose file content :
const { convertDockerRunToCompose } = require('composerize');
const dockerRunCommand = 'docker run -d -p 8080:80 --name my-web-app nginx:latest';
// An existing Docker Compose configuration as a string
const existingComposeConfig = `
version: '3'
services:
existing-service:
image: my-existing-image:latest
ports:
- '8000:80'
`;
// Convert the Docker run command to a Docker Compose configuration and merge with provided docker compose
const composeConfig = convertDockerRunToCompose(dockerRunCommand, existingComposeConfig);
console.log(composeConfig);
You can also choose which version of Docker compose V2, you target : 2.x, 3.x or Common Specification by specifying a third parameter composeVersion
on convertDockerRunToCompose
:
- 'v2x'
- 'v3x'
- 'latest'
const { convertDockerRunToCompose } = require('composerize');
const dockerRunCommand = 'docker run -d -p 8080:80 --name my-web-app nginx:latest';
// Convert the Docker run command to a Docker Compose configuration for 2.x
const composeConfig = convertDockerRunToCompose(dockerRunCommand, null, 'v2x');
console.log(composeConfig);
You can also choose indentation level by specifying a fourth parameter indent
on convertDockerRunToCompose
:
- 'v2x'
- 'v3x'
- 'latest'
const { convertDockerRunToCompose } = require('composerize');
const dockerRunCommand = 'docker run -d -p 8080:80 --name my-web-app nginx:latest';
// Convert the Docker run command to a Docker Compose configuration for 2.x
const composeConfig = convertDockerRunToCompose(dockerRunCommand, null, 'latest', 2);
console.log(composeConfig);
Contributing
- Clone a fork of the repo and install the project dependencies by running
yarn
- Make your changes, and build the project by running
make build
- Test your changes with
make test
yarn version
Needs yarn@1.19.1. See https://github.com/yarnpkg/yarn/issues/7734.
Maintainers
- Mark Larah (Twitter: @mark_larah)
- ShareVB GitHub