diff --git a/tools/standalone-docker/Dockerfile b/tools/standalone-docker/Dockerfile new file mode 100644 index 00000000..2573717d --- /dev/null +++ b/tools/standalone-docker/Dockerfile @@ -0,0 +1,15 @@ +# 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 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 app + +WORKDIR app + +RUN pip3 install -r requirements.txt + +ENTRYPOINT [ "python3", "launcher.py"] 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..20127249 --- /dev/null +++ b/tools/standalone-docker/docker-run.sh @@ -0,0 +1 @@ +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 new file mode 100755 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!') +