From 2e7809abcca4234a07f059acd7e6d481114d1991 Mon Sep 17 00:00:00 2001 From: Vitalii Cherkashyn Date: Tue, 9 Apr 2019 07:37:06 +0200 Subject: [PATCH 1/4] alternative Dockerfile with ability to create container without cloning repo. Package ubuntu contains all necessary packages for scripts ( scp, ssh, .... ) --- tools/Dockerfile_standalone | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 tools/Dockerfile_standalone diff --git a/tools/Dockerfile_standalone b/tools/Dockerfile_standalone new file mode 100644 index 00000000..63270a28 --- /dev/null +++ b/tools/Dockerfile_standalone @@ -0,0 +1,16 @@ +FROM ubuntu:latest + + +RUN apt-get install -y python3-pip python3-dev \ + && cd /usr/local/bin \ + && ln -s /usr/bin/python3 python \ + && pip3 install --upgrade pip \ + && pip3 install wheel + + +RUN wget `curl -s https://api.github.com/repos/bugy/script-server/releases/latest | grep browser_download_url | cut -d '"' -f 4` \ + && unzip script-server.zip \ + && pip3 install -r requirements.txt + +EXPOSE 5000 +CMD [ "python3", "launcher.py" ] From 5a749e3059b7dd49e0248f93660c54620bcf7ad5 Mon Sep 17 00:00:00 2001 From: technik Date: Sat, 27 Jul 2019 21:23:39 +0200 Subject: [PATCH 2/4] re-build docker container, still have a lack of configuration example --- tools/Dockerfile_standalone | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/tools/Dockerfile_standalone b/tools/Dockerfile_standalone index 63270a28..f2997fdd 100644 --- a/tools/Dockerfile_standalone +++ b/tools/Dockerfile_standalone @@ -1,16 +1,16 @@ -FROM ubuntu:latest +# docker build --tag script-server-local --file Dockerfile_standalone . +# docker run -p 5000:5000 script-server-local +FROM ubuntu:18.04 +RUN apt-get update \ + && apt-get install -y python3-pip python3-dev wget curl unzip -RUN apt-get install -y python3-pip python3-dev \ - && cd /usr/local/bin \ - && ln -s /usr/bin/python3 python \ - && pip3 install --upgrade pip \ - && pip3 install wheel +RUN wget `curl -s https://api.github.com/repos/bugy/script-server/releases/latest | grep browser_download_url | cut -d '"' -f 4` \ + && unzip script-server.zip -d script-server +WORKDIR script-server -RUN wget `curl -s https://api.github.com/repos/bugy/script-server/releases/latest | grep browser_download_url | cut -d '"' -f 4` \ - && unzip script-server.zip \ - && pip3 install -r requirements.txt +RUN pip3 install -r requirements.txt EXPOSE 5000 -CMD [ "python3", "launcher.py" ] +ENTRYPOINT [ "python3", "launcher.py" ] \ No newline at end of file From a3db2f1d9b94b8d980e5d222a55f1b91d99e1c78 Mon Sep 17 00:00:00 2001 From: technik Date: Sun, 4 Aug 2019 00:14:43 +0200 Subject: [PATCH 3/4] re-arrange all files that belong to standalone Docker, new configuration, scripts for building and running --- .../Dockerfile} | 3 +- .../config/guess_number.json | 19 +++++++++++ tools/standalone-docker/docker-build.sh | 1 + tools/standalone-docker/docker-run.sh | 1 + .../standalone-docker/scripts/guess_number.py | 33 +++++++++++++++++++ 5 files changed, 55 insertions(+), 2 deletions(-) rename tools/{Dockerfile_standalone => standalone-docker/Dockerfile} (85%) create mode 100644 tools/standalone-docker/config/guess_number.json create mode 100755 tools/standalone-docker/docker-build.sh create mode 100755 tools/standalone-docker/docker-run.sh create mode 100644 tools/standalone-docker/scripts/guess_number.py diff --git a/tools/Dockerfile_standalone b/tools/standalone-docker/Dockerfile similarity index 85% rename from tools/Dockerfile_standalone rename to tools/standalone-docker/Dockerfile index f2997fdd..0a64fb94 100644 --- a/tools/Dockerfile_standalone +++ b/tools/standalone-docker/Dockerfile @@ -12,5 +12,4 @@ WORKDIR script-server RUN pip3 install -r requirements.txt -EXPOSE 5000 -ENTRYPOINT [ "python3", "launcher.py" ] \ No newline at end of file +ENTRYPOINT [ "python3", "launcher.py", "-f", "/app/config/guess_number.json"] \ No newline at end of file diff --git a/tools/standalone-docker/config/guess_number.json b/tools/standalone-docker/config/guess_number.json new file mode 100644 index 00000000..4d1bc77b --- /dev/null +++ b/tools/standalone-docker/config/guess_number.json @@ -0,0 +1,19 @@ +{ + "name": "Guess a number", + "script_path": "/app/scripts/guess_number.py", + "parameters": [ + { + "name": "max number", + "type": "int", + "min": 1, + "required": true, + "max": 100 + }, + { + "name": "max gueses", + "type": "int", + "min": 1, + "max": 5 + } + ] +} diff --git a/tools/standalone-docker/docker-build.sh b/tools/standalone-docker/docker-build.sh new file mode 100755 index 00000000..aecd6c30 --- /dev/null +++ b/tools/standalone-docker/docker-build.sh @@ -0,0 +1 @@ +docker build --tag script-server . \ No newline at end of file diff --git a/tools/standalone-docker/docker-run.sh b/tools/standalone-docker/docker-run.sh new file mode 100755 index 00000000..fcadb626 --- /dev/null +++ b/tools/standalone-docker/docker-run.sh @@ -0,0 +1 @@ +docker run -v `dirname $0 | pwd`/config:/app/config -v `dirname $0 | pwd`/scripts:/app/scripts -p 5000:5000 script-server \ No newline at end of file diff --git a/tools/standalone-docker/scripts/guess_number.py b/tools/standalone-docker/scripts/guess_number.py new file mode 100644 index 00000000..3c61b0f1 --- /dev/null +++ b/tools/standalone-docker/scripts/guess_number.py @@ -0,0 +1,33 @@ +#!/usr/bin/python3 + +import random +import sys + +max_number = int(sys.argv[1]) +if len(sys.argv) > 2 and sys.argv[2]: + gueses = int(sys.argv[2]) +else: + gueses = 3 + +gueses_left = 3 + +number = random.randint(0, max_number) + +print('Try to guess a number between 0 and ' + str(max_number) + ' (' + str(gueses_left) + ' tries):') +while gueses_left > 0: + user_input = input() + try: + user_input = int(user_input) + except: + print(user_input + ' is not really a number, please try again') + + if user_input == number: + print('Congratulations, you guessed right!') + sys.exit(0) + print('Oops, the wrong choice.', end='') + gueses_left -= 1 + if gueses_left: + print('. Try again:') + +print('\nTry you luck next time!') + From e21deea987ee67ee908e4101e85390059b627322 Mon Sep 17 00:00:00 2001 From: bugy Date: Sun, 18 Aug 2019 11:04:41 +0200 Subject: [PATCH 4/4] #206: fixed wrong paths in docker example --- tools/standalone-docker/Dockerfile | 6 +++--- tools/standalone-docker/docker-run.sh | 2 +- tools/standalone-docker/scripts/guess_number.py | 0 3 files changed, 4 insertions(+), 4 deletions(-) mode change 100644 => 100755 tools/standalone-docker/scripts/guess_number.py diff --git a/tools/standalone-docker/Dockerfile b/tools/standalone-docker/Dockerfile index 0a64fb94..2573717d 100644 --- a/tools/standalone-docker/Dockerfile +++ b/tools/standalone-docker/Dockerfile @@ -6,10 +6,10 @@ RUN apt-get update \ && apt-get install -y python3-pip python3-dev wget curl unzip RUN wget `curl -s https://api.github.com/repos/bugy/script-server/releases/latest | grep browser_download_url | cut -d '"' -f 4` \ - && unzip script-server.zip -d script-server + && unzip script-server.zip -d app -WORKDIR script-server +WORKDIR app RUN pip3 install -r requirements.txt -ENTRYPOINT [ "python3", "launcher.py", "-f", "/app/config/guess_number.json"] \ No newline at end of file +ENTRYPOINT [ "python3", "launcher.py"] diff --git a/tools/standalone-docker/docker-run.sh b/tools/standalone-docker/docker-run.sh index fcadb626..20127249 100755 --- a/tools/standalone-docker/docker-run.sh +++ b/tools/standalone-docker/docker-run.sh @@ -1 +1 @@ -docker run -v `dirname $0 | pwd`/config:/app/config -v `dirname $0 | pwd`/scripts:/app/scripts -p 5000:5000 script-server \ No newline at end of file +docker run -v `dirname $0 | pwd`/../../samples/configs:/app/conf/runners -v `dirname $0 | pwd`/../../samples/scripts:/app/samples/scripts -p 5000:5000 script-server diff --git a/tools/standalone-docker/scripts/guess_number.py b/tools/standalone-docker/scripts/guess_number.py old mode 100644 new mode 100755