From 0e1cfcf1794f848f74b2224fc083f1995c64bb2c Mon Sep 17 00:00:00 2001 From: Joe Crypto Date: Tue, 23 Aug 2022 18:11:50 +0000 Subject: [PATCH 1/3] build a docker image --- Dockerfile | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..fc7ec20 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,29 @@ +FROM erlang:22.3.4-alpine AS base + +RUN apk add --no-cache --update ncurses dbus bluez erlang \ + libsodium libstdc++ + +ARG REBAR_DIAGNOSTIC=0 +ENV DIAGNOSTIC=${REBAR_DIAGNOSTIC} + +ARG REBAR_BUILD_TARGET +ARG TAR_PATH=_build/$REBAR_BUILD_TARGET/rel/*/*.tar.gz + +FROM base AS build + +RUN apk add --no-cache --update \ + autoconf automake bison build-base bzip2 cmake curl \ + dbus-dev flex git gmp-dev libsodium-dev libtool linux-headers lz4 \ + openssl-dev pkgconfig protoc sed tar wget cargo + +WORKDIR /tmp/gateway_config +COPY . . +RUN make && make release + +FROM base AS final + +COPY --from=build /tmp/gateway_config/_build/prod/rel/gateway_config /opt/gateway_config +WORKDIR /opt/gateway_config + +ENTRYPOINT ["/opt/gateway_config/bin/gateway_config"] +CMD ["foreground"] From d1ecf6ed8326e64b1054a53d04e8ff06aeabd3ce Mon Sep 17 00:00:00 2001 From: Joe Crypto Date: Tue, 23 Aug 2022 18:12:06 +0000 Subject: [PATCH 2/3] added a dockerignore file --- .dockerignore | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .dockerignore diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..c9c5676 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +Dockerfile + From 13bc7378e301dcf9d42ff5eafd59dc863e6db8aa Mon Sep 17 00:00:00 2001 From: Joe Crypto Date: Thu, 25 Aug 2022 15:34:15 +0000 Subject: [PATCH 3/3] added dbus volume --- Dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Dockerfile b/Dockerfile index fc7ec20..5fe83cf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,6 +22,8 @@ RUN make && make release FROM base AS final +VOLUME ["/var/run/dbus"] + COPY --from=build /tmp/gateway_config/_build/prod/rel/gateway_config /opt/gateway_config WORKDIR /opt/gateway_config