aboutsummaryrefslogtreecommitdiff
path: root/Dockerfile
diff options
context:
space:
mode:
authorFuwn <[email protected]>2024-06-25 00:49:36 +0000
committerFuwn <[email protected]>2024-06-25 00:49:36 +0000
commitb32780c083dd0e4f6ec6c4fbcb5a5821ab968515 (patch)
tree14b91a72018fbab1704cfdc0e6afa1bff8809643 /Dockerfile
parentdocs(readme): add dynamic mode information (diff)
downloadgigi-b32780c083dd0e4f6ec6c4fbcb5a5821ab968515.tar.xz
gigi-b32780c083dd0e4f6ec6c4fbcb5a5821ab968515.zip
build(docker): create docker container
Diffstat (limited to 'Dockerfile')
-rw-r--r--Dockerfile36
1 files changed, 36 insertions, 0 deletions
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..60dde91
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,36 @@
+FROM alpine:latest as environment
+
+RUN apk update \
+ && apk upgrade \
+ && apk add --no-cache libstdc++
+
+FROM environment as build_environment
+
+RUN apk add --no-cache \
+ clang \
+ ninja \
+ alpine-sdk \
+ linux-headers
+
+FROM build_environment as builder
+
+WORKDIR /gigi
+
+COPY ./gigi.c ./gigi.c
+COPY ./build.ninja ./build.ninja
+
+RUN sed -i 's/#include <bits\/types\/FILE.h>//g' gigi.c
+
+RUN ninja
+
+RUN strip /gigi/build/gigi
+
+FROM environment
+
+WORKDIR /gigi
+
+COPY --from=builder /gigi/build/gigi ./
+
+EXPOSE 79
+
+ENTRYPOINT ["/gigi/gigi"]