diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..5957905 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,11 @@ +FROM python:3.8.0-slim +RUN rm /bin/sh && ln -s /bin/bash /bin/sh +RUN apt-get update \ +&& apt-get install gcc git -y \ +&& apt-get clean + +COPY ./ DashMachine +WORKDIR DashMachine +RUN pip install -r requirements.txt +EXPOSE 5000 +CMD ["python", "run.py"] \ No newline at end of file diff --git a/dashmachine/__init__.py b/dashmachine/__init__.py index 5381949..e7e0c4b 100755 --- a/dashmachine/__init__.py +++ b/dashmachine/__init__.py @@ -6,9 +6,6 @@ from flask_sqlalchemy import SQLAlchemy from flask_bcrypt import Bcrypt from flask_login import LoginManager from flask_restful import Api -from flask_avatars import Avatars -from apscheduler.jobstores.sqlalchemy import SQLAlchemyJobStore -from flask_apscheduler import APScheduler if not os.path.isdir("dashmachine/user_data"): os.mkdir("dashmachine/user_data") @@ -17,22 +14,12 @@ if not os.path.isdir("dashmachine/user_data"): app = Flask(__name__) cache = Cache(app, config={"CACHE_TYPE": "simple"}) api = Api(app) -avatars = Avatars(app) app.config["AVATARS_IDENTICON_BG"] = (255, 255, 255) app.config["SECRET_KEY"] = "66532a62c4048f976e22a39638b6f10e" app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///user_data/site.db" app.config["SEND_FILE_MAX_AGE_DEFAULT"] = 0 -# scheduler config -app.config["SCHEDULER_API_ENABLED"] = True -app.config["SCHEDULER_JOBSTORES"] = { - "default": SQLAlchemyJobStore(url="sqlite:///scheduler.db") -} - -scheduler = APScheduler() -scheduler.init_app(app) -scheduler.start() db = SQLAlchemy(app) bcrypt = Bcrypt(app) login_manager = LoginManager(app) diff --git a/requirements.txt b/requirements.txt index c4f1ad6..2033357 100755 --- a/requirements.txt +++ b/requirements.txt @@ -1,19 +1,11 @@ alembic==1.3.3 -amqp==2.5.1 -aniso8601==7.0.0 -APScheduler==3.6.1 -attrs==19.3.0 -autopep8==1.4.4 +aniso8601==8.0.0 bcrypt==3.1.7 -beautifulsoup4==4.7.1 -billiard==3.6.1.0 -certifi==2019.6.16 -cffi==1.12.3 +certifi==2019.11.28 +cffi==1.13.2 chardet==3.0.4 Click==7.0 Flask==1.1.1 -Flask-APScheduler==1.11.0 -Flask-Avatars==0.2.2 Flask-Bcrypt==0.7.1 Flask-Caching==1.8.0 Flask-Login==0.4.1 @@ -21,40 +13,22 @@ Flask-Migrate==2.5.2 Flask-RESTful==0.3.7 Flask-Script==2.0.6 Flask-SQLAlchemy==2.4.1 -Flask-Toastr==0.5.2 Flask-WTF==0.14.2 -fuzzysearch==0.6.2 +gunicorn==20.0.4 htmlmin==0.1.12 idna==2.8 -importlib-metadata==1.2.0 -ipaddress==1.0.23 itsdangerous==1.1.0 -Jinja2==2.10.3 +Jinja2==2.11.1 jsmin==2.2.2 -kombu==4.6.7 Mako==1.1.1 MarkupSafe==1.1.1 -more-itertools==8.0.2 -pathlib-mate==0.0.15 -Pillow==6.2.1 -pycodestyle==2.5.0 pycparser==2.19 -PyPDF2==1.26.0 python-dateutil==2.8.1 python-editor==1.0.4 -python-http-client==3.2.1 -python-resize-image==1.1.19 pytz==2019.3 requests==2.22.0 -simplejson==3.17.0 -six==1.13.0 -soupsieve==1.9.5 -SQLAlchemy==1.3.11 -tzlocal==2.0.0 -urllib3==1.25.7 -uszipcode==0.2.4 -vine==1.3.0 -Wand==0.5.8 -Werkzeug==0.16.0 +six==1.14.0 +SQLAlchemy==1.3.13 +urllib3==1.25.8 +Werkzeug==0.16.1 WTForms==2.2.1 -zipp==0.6.0