From 1a2262a1bfad5a231d8be9ae0faf958db1cd08c1 Mon Sep 17 00:00:00 2001
From: librelois <c@elo.tf>
Date: Fri, 28 Jan 2022 01:45:38 +0100
Subject: [PATCH] add a local docker for dev

---
 .../duniter.Dockerfile                        | 35 +++++++++++++++++++
 scripts/docker.sh                             | 14 ++++++++
 scripts/docker_run.sh                         | 12 -------
 scripts/init.sh                               | 12 -------
 4 files changed, 49 insertions(+), 24 deletions(-)
 create mode 100644 .maintain/local-docker-test-network/duniter.Dockerfile
 create mode 100755 scripts/docker.sh
 delete mode 100644 scripts/docker_run.sh
 delete mode 100755 scripts/init.sh

diff --git a/.maintain/local-docker-test-network/duniter.Dockerfile b/.maintain/local-docker-test-network/duniter.Dockerfile
new file mode 100644
index 000000000..948917a3f
--- /dev/null
+++ b/.maintain/local-docker-test-network/duniter.Dockerfile
@@ -0,0 +1,35 @@
+FROM docker.io/library/ubuntu:20.04
+
+# metadata
+ARG VCS_REF
+ARG BUILD_DATE
+
+# show backtraces
+ENV RUST_BACKTRACE 1
+
+# install tools and dependencies
+RUN apt-get update && \
+	DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && \
+	DEBIAN_FRONTEND=noninteractive apt-get install -y \
+		libssl1.1 \
+		ca-certificates \
+		curl && \
+# apt cleanup
+	apt-get autoremove -y && \
+	apt-get clean && \
+	find /var/lib/apt/lists/ -type f -not -name lock -delete; \
+# add user
+	useradd -m -u 1000 -U -s /bin/sh -d /duniter duniter
+
+# add duniter binary to docker image
+COPY ./build/duniter /usr/local/bin
+
+USER duniter
+
+# check if executable works in this container
+RUN /usr/local/bin/duniter --version
+
+EXPOSE 30333 9933 9944
+VOLUME ["/duniter"]
+
+ENTRYPOINT ["/usr/local/bin/duniter"]
diff --git a/scripts/docker.sh b/scripts/docker.sh
new file mode 100755
index 000000000..4570ac2c0
--- /dev/null
+++ b/scripts/docker.sh
@@ -0,0 +1,14 @@
+#!/usr/bin/env bash
+# This script is meant to be run on Unix/Linux based systems
+set -e
+
+echo "*** Start Duniter node ***"
+
+cd $(dirname ${BASH_SOURCE[0]})/..
+
+mkdir -p build
+cp target/release/duniter build/duniter
+docker build -t "duniter/duniter-v2s:local" -f ".maintain/local-docker-test-network/duniter.Dockerfile" .
+
+#docker-compose down --remove-orphans
+#docker-compose run --rm --service-ports dev $@
diff --git a/scripts/docker_run.sh b/scripts/docker_run.sh
deleted file mode 100644
index 3a2774476..000000000
--- a/scripts/docker_run.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/bin/env bash
-# This script is meant to be run on Unix/Linux based systems
-set -e
-
-echo "*** Start Duniter node ***"
-
-cd $(dirname ${BASH_SOURCE[0]})/..
-
-mkdir -p ./.local
-
-docker-compose down --remove-orphans
-docker-compose run --rm --service-ports dev $@
diff --git a/scripts/init.sh b/scripts/init.sh
deleted file mode 100755
index f976f7235..000000000
--- a/scripts/init.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/bin/env bash
-# This script is meant to be run on Unix/Linux based systems
-set -e
-
-echo "*** Initializing WASM build environment"
-
-if [ -z $CI_PROJECT_NAME ] ; then
-   rustup update nightly
-   rustup update stable
-fi
-
-rustup target add wasm32-unknown-unknown --toolchain nightly
-- 
GitLab