Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mutable/container-factory
container-factory produces Docker images from tarballs of application source code
https://github.com/mutable/container-factory
Last synced: about 2 months ago
JSON representation
container-factory produces Docker images from tarballs of application source code
- Host: GitHub
- URL: https://github.com/mutable/container-factory
- Owner: mutable
- License: isc
- Created: 2015-05-06T16:03:22.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2015-05-06T16:07:53.000Z (over 9 years ago)
- Last Synced: 2024-04-11T20:54:58.845Z (8 months ago)
- Language: Go
- Homepage:
- Size: 336 KB
- Stars: 60
- Watchers: 15
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-docker - container-factory - Produces Docker images from tarballs of application source code by [@mutable](https://github.com/mutable) (Docker Images / Builder)
- awesome-docker - container-factory - Produces Docker images from tarballs of application source code by [@mutable](https://github.com/mutable) (Docker Images / Builder)
README
# container-factory
container-factory produces Docker images from tarballs of application source code.
It accepts archives with `Dockerfile`s, but if your application's language is supported,
it can automatically add a suitable `Dockerfile`.Currently, only node.js is supported, marked by the presence of a `package.json`.
## License
container-factory is distributed under the terms of the ISC license.
## Installation
Make sure you have [Docker](https://docker.io) set up.
We access the Docker API, so we pass that through when running the container.
The Docker server is autodetected in the same way as the Docker CLI does,
and like the Docker CLI, we default to `/var/run/docker.sock`.Here's how to run container-factory in a container:
```
docker run -d -p 9001:3000 -v /var/run/docker.sock:/var/run/docker.sock lsqio/container-factory
```## API
### POST /buildBuild a container. Takes an application tarball as body.
Modeled on [Docker's `/build` API](https://docs.docker.com/reference/api/docker_remote_api_v1.18/#build-image-from-a-dockerfile)Parameters:
* t: Docker tag to publish the resulting Docker image as.### Response
Docker-style progress reporting, with the push happening right after the build.
Build progress:
```json
{"stream": "Step 1..."}
{"stream": "..."}
{"error": "Error...", "errorDetail": {"code": 123, "message": "Error..."}}
```Push progress:
```json
{"status": "Pushing..."}
{"status": "Pushing", "progress": "1/? (n/a)", "progressDetail": {"current": 1}}}
{"error": "Invalid..."}
```