diff --git a/Dockerfile.armhf b/Dockerfile.armhf
new file mode 100644
index 0000000..42ec40e
--- /dev/null
+++ b/Dockerfile.armhf
@@ -0,0 +1,78 @@
+# Build stage
+FROM arm64v8/golang:1.17-alpine3.16 as builder
+LABEL maintainer="Khanh Ngo <k@ndk.name"
+
+ARG TARGETOS=linux
+ARG TARGETARCH=arm64v8
+
+ARG BUILD_DEPENDENCIES="npm \
+    yarn"
+
+# Get dependencies
+RUN apk add --update --no-cache ${BUILD_DEPENDENCIES}
+
+WORKDIR /build
+
+# Add dependencies
+COPY go.mod /build
+COPY go.sum /build
+COPY package.json /build
+COPY yarn.lock /build
+
+# Prepare assets
+RUN yarn install --pure-lockfile --production && \
+    yarn cache clean
+
+# Move admin-lte dist
+RUN mkdir -p assets/dist/js assets/dist/css && \
+    cp /build/node_modules/admin-lte/dist/js/adminlte.min.js \
+    assets/dist/js/adminlte.min.js && \
+    cp /build/node_modules/admin-lte/dist/css/adminlte.min.css \
+    assets/dist/css/adminlte.min.css
+
+# Move plugin assets
+RUN mkdir -p assets/plugins && \
+    cp -r /build/node_modules/admin-lte/plugins/jquery/ \
+    /build/node_modules/admin-lte/plugins/fontawesome-free/ \
+    /build/node_modules/admin-lte/plugins/bootstrap/ \
+    /build/node_modules/admin-lte/plugins/icheck-bootstrap/ \
+    /build/node_modules/admin-lte/plugins/toastr/ \
+    /build/node_modules/admin-lte/plugins/jquery-validation/ \
+    /build/node_modules/admin-lte/plugins/select2/ \
+    /build/node_modules/jquery-tags-input/ \
+    assets/plugins/
+
+# Get go modules and build tool
+RUN go mod download && \
+    go get github.com/GeertJohan/go.rice/rice
+
+# Add sources
+COPY . /build
+
+# Move custom assets
+RUN cp -r /build/custom/ assets/
+
+# Build
+RUN rice embed-go && \
+    CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -a -o wg-ui .
+
+# Release stage
+FROM alpine:3.16
+
+RUN addgroup -S wgui && \
+    adduser -S -D -G wgui wgui
+
+RUN apk --no-cache add ca-certificates wireguard-tools jq
+
+WORKDIR /app
+
+RUN mkdir -p db
+
+# Copy binary files
+COPY --from=builder --chown=wgui:wgui /build/wg-ui .
+RUN chmod +x wg-ui
+COPY init.sh .
+
+EXPOSE 5000/tcp
+HEALTHCHECK CMD ["wget","--output-document=-","--quiet","--tries=1","http://127.0.0.1:5000/_health"]
+ENTRYPOINT ["./init.sh"]