From a5c5d356bf7b9155016d089b7604e15ca27f2b6f Mon Sep 17 00:00:00 2001 From: Ethan O'Brien Date: Wed, 3 Jul 2024 12:27:21 -0500 Subject: [PATCH] Add dockerfile --- docker/Dockerfile | 26 ++++++++++++++++++++++++++ docker/docker-compose.yml | 15 +++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 docker/Dockerfile create mode 100644 docker/docker-compose.yml diff --git a/docker/Dockerfile b/docker/Dockerfile new file mode 100644 index 0000000..ca34dab --- /dev/null +++ b/docker/Dockerfile @@ -0,0 +1,26 @@ +FROM docker.io/library/debian:latest + +RUN apt update && apt install -y curl npm libssl-dev perl git +RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash +RUN apt update && apt install -y nodejs +RUN curl -sSf https://sh.rustup.rs | sh -s -- -y --no-modify-path --default-toolchain stable --profile minimal +RUN git clone https://github.com/ethanaobrien/ew.git + +WORKDIR /ew/webui/ + +RUN npm i && npm run build + +WORKDIR /ew/ + +RUN . "$HOME/.cargo/env" && cargo build --release +RUN mkdir /root/ew/ && cp target/release/ew /root/ew/ew + +RUN echo "#!/bin/bash\n\n /root/ew/ew --path \"\${DIRECTORY:-/data/}\" --port \"\${PORT:-8080}\"" > /root/ew/start.sh + +RUN chmod +x /root/ew/start.sh + +WORKDIR / + +RUN rm -rf /ew/ + +ENTRYPOINT ["/root/ew/start.sh"] diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml new file mode 100644 index 0000000..6dbcbe1 --- /dev/null +++ b/docker/docker-compose.yml @@ -0,0 +1,15 @@ +version: '3' +services: + sif2-ew: + image: sif2-ew:latest + container_name: sif2-ew + build: + dockerfile: "./Dockerfile" + environment: + PORT: 8081 + DIRECTORY: /data + ports: + - 8081:8081 + volumes: + - ./data:/data + restart: unless-stopped