aboutsummaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorMarco Andronaco <andronacomarco@gmail.com>2024-10-05 21:36:05 +0200
committerGabriel A. Giovanini <mail@gabrielgio.me>2024-10-06 13:34:29 +0200
commit385586d383acd0868ace3f5da2094dd87c1b89e3 (patch)
tree7a2921e29e0fdf773f64f5aa492470e43bc113fe /contrib
parent836c0cc75c2f28cccff5892c1357873c1a29945a (diff)
downloadcerrado-385586d383acd0868ace3f5da2094dd87c1b89e3.tar.gz
cerrado-385586d383acd0868ace3f5da2094dd87c1b89e3.tar.bz2
cerrado-385586d383acd0868ace3f5da2094dd87c1b89e3.zip
feat: Add docker support
Diffstat (limited to 'contrib')
-rw-r--r--contrib/Dockerfile35
-rw-r--r--contrib/config.docker.scfg7
-rw-r--r--contrib/docker-compose.yaml14
3 files changed, 56 insertions, 0 deletions
diff --git a/contrib/Dockerfile b/contrib/Dockerfile
new file mode 100644
index 0000000..d2e3056
--- /dev/null
+++ b/contrib/Dockerfile
@@ -0,0 +1,35 @@
+# syntax=docker/dockerfile:1
+
+FROM golang:1.22-alpine AS builder
+RUN apk add --no-cache git make sassc
+
+WORKDIR /build
+
+# Download Git submodules
+COPY .git ./.git
+RUN git submodule update --init --recursive
+
+# Download Go modules
+COPY go.mod go.sum ./
+RUN go mod download
+RUN go mod verify
+
+# Transfer source code
+COPY Makefile .
+COPY scss ./scss
+COPY static ./static
+COPY templates ./templates
+COPY *.go ./
+COPY pkg ./pkg
+
+# Build
+RUN make
+
+FROM scratch AS build-release-stage
+
+WORKDIR /app
+
+COPY --from=builder /build/cerrado .
+COPY contrib/config.docker.scfg /etc/cerrado.scfg
+
+ENTRYPOINT ["./cerrado"]
diff --git a/contrib/config.docker.scfg b/contrib/config.docker.scfg
new file mode 100644
index 0000000..64b1bff
--- /dev/null
+++ b/contrib/config.docker.scfg
@@ -0,0 +1,7 @@
+listen-addr tcp://:8080
+
+root-readme /srv/git/README.md
+
+scan /srv/git/ {
+ public true
+}
diff --git a/contrib/docker-compose.yaml b/contrib/docker-compose.yaml
new file mode 100644
index 0000000..5de7863
--- /dev/null
+++ b/contrib/docker-compose.yaml
@@ -0,0 +1,14 @@
+name: cerrado
+
+services:
+ app:
+ container_name: cerrado
+ restart: unless-stopped
+ build:
+ context: ../
+ dockerfile: contrib/Dockerfile
+ ports:
+ - "8080:8080"
+ volumes:
+ - /srv/git:/srv/git # set your scan folder here
+ # - ./config.scfg:/etc/cerrado.scfg:ro # load a custom config file