From d4680cb46376801dad85f48dd4900e23b10b5b46 Mon Sep 17 00:00:00 2001 From: Jay Gabriels Date: Sat, 5 Mar 2022 09:42:07 -0800 Subject: [PATCH] Add Dockerfile --- CHANGELOG.md | 1 + Dockerfile | 11 +++++++++++ README.md | 19 +++++++++++++++++++ 3 files changed, 31 insertions(+) create mode 100644 Dockerfile diff --git a/CHANGELOG.md b/CHANGELOG.md index 32b4be0..b8a3372 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) ## [1.7.12] - unreleased ### Added +- Dockerfile ### Changed ### Deprecated ### Removed diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..1bf6f61 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,11 @@ +FROM golang:alpine + +# Install dependencies for copy +RUN apk add -U --no-cache ca-certificates tzdata git + +WORKDIR /go/src/github.com/gabrie30/ghorg +COPY . . + +# Fetching dependencies and build the app +RUN go get -d -v ./... +RUN CGO_ENABLED=0 go build -a --mod vendor -o ghorg . diff --git a/README.md b/README.md index 6cd141a..99ffb20 100644 --- a/README.md +++ b/README.md @@ -95,6 +95,25 @@ go install github.com/gabrie30/ghorg@latest go get github.com/gabrie30/ghorg ``` +### Docker + +> This is only recommended for testing due to resource constraints + +1. Clone repo then `cd ghorg` +1. Build the image `docker build . -t ghorg-docker` +1. Run in docker + +```bash +# Using your local ghorg configuration file, cloning in container +docker run -v $HOME/.config/ghorg/conf.yaml:/root/.config/ghorg/conf.yaml ghorg-docker ./ghorg clone kubernetes + +# Using flags, cloning in container +docker run ghorg-docker ./ghorg clone kubernetes --token=bGVhdmUgYSBjb21tZW50IG9uIGlzc3VlIDY2 + +# Using flags, cloning to your machine +docker run -v $HOME/ghorg/:/root/ghorg/ ghorg-docker ./ghorg clone kubernetes --token=bGVhdmUgYSBjb21tZW50IG9uIGlzc3VlIDY2 --output-dir=cloned-from-docker +``` + ## Use ```bash