From 4bff6ac016bedbf0665f9ecc20e680703d74fdd8 Mon Sep 17 00:00:00 2001 From: elonen Date: Thu, 28 Jul 2022 00:10:49 +0300 Subject: [PATCH 1/2] Docker support --- .dockerignore | 3 +++ Dockerfile | 15 +++++++++++++++ run_in_docker.sh | 5 +++++ 3 files changed, 23 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100755 run_in_docker.sh diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..4e18eda --- /dev/null +++ b/.dockerignore @@ -0,0 +1,3 @@ +slack-archive_USERDATA +.git +.gitignore diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..44588ee --- /dev/null +++ b/Dockerfile @@ -0,0 +1,15 @@ +FROM node:16 + +WORKDIR /slack-archive + +COPY *.json ./ +COPY yarn.lock ./ +RUN npm install + +# NOTE: see also .dockerignore +COPY . /slack-archive/ + +RUN npm run compile + +VOLUME /slack-archive/slack-archive +ENTRYPOINT ["bin/slack-archive.js"] diff --git a/run_in_docker.sh b/run_in_docker.sh new file mode 100755 index 0000000..e0b6efa --- /dev/null +++ b/run_in_docker.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +mkdir -p slack-archive_USERDATA +docker build -t slack-archive:dev . +docker run --mount type=bind,source="$(pwd)"/slack-archive_USERDATA,target=/slack-archive/slack-archive -it slack-archive:dev From ddeb1c386dbd5ec4b134ed37af2a2f1b6db60863 Mon Sep 17 00:00:00 2001 From: elonen Date: Thu, 28 Jul 2022 12:52:55 +0300 Subject: [PATCH 2/2] Add README instructions for Docker --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index 86ae4a0..63e7741 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,14 @@ can still enjoy in 20 years. This tool will help you do that. npx slack-archive ``` +Alternatively, to run a development version in Docker: +1. Checkout the code from Git +2. Make sure Docker is installed +3. Run `./run_in_docker.sh` + +This will build Docker image called `slack-archive:dev`, compile it and start the interactive guide. +Results wil be saved in folder `slack-archive_USERDATA/`. + ### Parameters ```