Dockerization
This commit is contained in:
parent
15cfab61cc
commit
d22766ba88
|
@ -1,2 +1,6 @@
|
|||
__pycache__
|
||||
scraperMain.out
|
||||
.env
|
||||
bss.env
|
||||
id_rsa
|
||||
id_rsa.pub
|
|
@ -0,0 +1,13 @@
|
|||
FROM python:3-slim
|
||||
|
||||
WORKDIR /bss
|
||||
|
||||
COPY requirements.txt requirements.txt
|
||||
RUN pip install --no-cache-dir -r requirements.txt
|
||||
|
||||
RUN mkdir .ssh
|
||||
COPY . .
|
||||
|
||||
EXPOSE 80
|
||||
# port 80, one worker, 210s timeout, from prom.py file.
|
||||
CMD [ "gunicorn", "-b :80", "-w 1", "-t 210", "prom:app" ]
|
|
@ -0,0 +1,10 @@
|
|||
version: '3'
|
||||
services:
|
||||
bss:
|
||||
build: .
|
||||
volumes:
|
||||
- './id_rsa:/bss/.ssh/id_rsa'
|
||||
#ports:
|
||||
# - '8000:80' # EXPOSING TO THE INTERWEBZ IS A BAD IDEA. USE DOCKER NETWORKS OR A REVERSE PROXY INSTEAD.
|
||||
env_file:
|
||||
- bss.env # SSH_HOSTNAME=172.16.16.16
|
8
prom.py
8
prom.py
|
@ -1,9 +1,11 @@
|
|||
"""
|
||||
ENV VARIABLES AVAILABLE:
|
||||
- SSH_HOSTNAME
|
||||
- SSH_KEYPATH
|
||||
- SSH_KEYPATH (defaults: /bss/id_rsa)
|
||||
- PREFIX (default: bladetest_)
|
||||
"""
|
||||
"""
|
||||
Run in development env:
|
||||
export FLASK_ENV=development
|
||||
export FLASK_APP=prom.py
|
||||
flask run
|
||||
|
@ -13,11 +15,11 @@ import os # for ENV arguments
|
|||
|
||||
import scraperMain, prom_servers
|
||||
|
||||
PREFIX = 'bladetest_'
|
||||
enc = 'k-space-blade-02' # for now ~~hard~~softcoded in, we'd need to add parsing in hostnames, and add a similar enc env var.
|
||||
|
||||
hostname = str(os.environ['SSH_HOSTNAME'])
|
||||
sshkeypath = os.getenv('SSH_KEYPATH')
|
||||
sshkeypath = os.getenv('SSH_KEYPATH','/bss/.ssh/id_rsa')
|
||||
PREFIX = os.getenv('PREFIX','bladetest_')
|
||||
|
||||
### FLASK ###
|
||||
app = Flask(__name__)
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
paramiko ~= 2.7.2
|
||||
Flask ~= 1.1.2
|
||||
gunicorn ~= 20.0.4
|
Loading…
Reference in New Issue