summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Dockerfile21
-rw-r--r--README.md3
2 files changed, 23 insertions, 1 deletions
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..41a64e1
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,21 @@
+#FROM golang:1.21.5-bullseye - debian/ubuntu has build dependencies(gcc)
+FROM golang:1.21.5-alpine
+
+RUN mkdir /app
+
+ADD . /app
+
+WORKDIR /app
+
+#Install the build dependencies
+RUN apk add --no-cache gcc libc-dev
+
+#CGO_ENABLED=1 for go-sqlite3 to work
+RUN CGO_ENABLED=1 go build -o main .
+
+# Volume for SSL/TLS Certificates(optional for development)
+VOLUME /certs
+
+EXPOSE 3000
+
+CMD ["/app/main"]
diff --git a/README.md b/README.md
index df22c95..4ded777 100644
--- a/README.md
+++ b/README.md
@@ -93,7 +93,8 @@ Once the server is running, you can access the API endpoints to upload a file fo
- [x] Connect with DB
- [x] Store JSON data to DB
- [x] Perform verification
-- [ ] Containerize the API
+- [x] Containerize the API
+- [ ] Optimize Docker Image size (Currently 509MB)
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.