https://github.com/32b/docker-get
pull* docker images from git repositories
https://github.com/32b/docker-get
docker docker-builder docker-git docker-image dockerfiles git pull
Last synced: 3 months ago
JSON representation
pull* docker images from git repositories
- Host: GitHub
- URL: https://github.com/32b/docker-get
- Owner: 32b
- Created: 2018-02-17T01:37:26.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-02-18T19:13:05.000Z (over 7 years ago)
- Last Synced: 2024-08-14T10:16:13.970Z (over 1 year ago)
- Topics: docker, docker-builder, docker-git, docker-image, dockerfiles, git, pull
- Language: Shell
- Homepage:
- Size: 25.4 KB
- Stars: 25
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# docker-get
Like `go get`, but for docker.
- [Features](#features)
- [Get it](#get-it)
- [Use it](#use-it)
- [Example](#example)
- [Comments](https://github.com/32b/docker-get/issues/1)
## Features
- Pull* docker images from git repositories.
- Repository URL + path in repo is mapped to the docker image name.
- Git tags / branches / commit ids are mapped to docker image tags.
- Supports any repository your `git` can pull.
- Git cache in `$DOCKERPATH` (by default `~/.docker-get`).
- Portable: written in 100% POSIX sh
*(git pull and docker build)
## Get it
- Download [the latest version](https://raw.githubusercontent.com/32b/docker-get/latest/docker-get) and make it executable:
```
curl -LO https://raw.githubusercontent.com/32b/docker-get/latest/docker-get
chmod +x ./docker-get
```
- A pre-built docker image is also available:
```
docker pull quay.io/sergey_grebenshchikov/docker-get:latest
```
- If you already have `docker-get` and just want to update the image:
```
docker-get https://github.com/32b/docker-get
```
## Use it
```text
docker-get URL[:TAG]
```
Any further arguments/flags are passed to `docker build`.
## Example
```bash
$ docker-get github.com/codemy/dockerfile/redis:master
[docker-get] fetching ./redis (master) from https://github.com/codemy/dockerfile ...
Initialized empty Git repository in /Users/sgreben/.docker-get/github.com/codemy/dockerfile/.git/
POST git-upload-pack (192 bytes)
remote: Counting objects: 141, done.
remote: Total 141 (delta 0), reused 0 (delta 0), pack-reused 141
Receiving objects: 100% (141/141), 43.30 KiB | 183.00 KiB/s, done.
Resolving deltas: 100% (53/53), done.
From https://github.com/codemy/dockerfile
* [new branch] master -> origin/heads/master
* [new branch] master -> origin/master
[docker-get] done
[docker-get] building github.com/codemy/dockerfile/redis:master...
Sending build context to Docker daemon 216.1kB
Step 1/3 : FROM redis:3.0.7-alpine
---> 856249f48b0c
Step 2/3 : COPY configs/* /configs/
---> Using cache
---> 6e1cba40af34
Step 3/3 : CMD ["redis-server", "/configs/1gb-ram.conf"]
---> Using cache
---> 4d28b4b3ba29
Successfully built 4d28b4b3ba29
Successfully tagged github.com/codemy/dockerfile/redis:master
Successfully tagged github.com/codemy/dockerfile/redis:latest
[docker-get] done
$ docker run -it github.com/codemy/dockerfile/redis:master
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 3.0.7 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 1
`-._ `-._ `-./ _.-' _.-'
...
$ tree $DOCKERPATH
/Users/sgreben/.docker-get
└── github.com
└── codemy
└── dockerfile
└── redis
├── Dockerfile
├── README.md
└── configs
├── 0.25gb-ram.conf
├── 0.5gb-ram.conf
├── 1gb-ram.conf
├── 3gb-ram.conf
└── 5gb-ram.conf
```
## Comments
Feel free to [leave a comment](https://github.com/32b/docker-get/issues/1) or create an issue.