Добавлен Docker

This commit is contained in:
2021-08-15 13:03:36 +03:00
parent 9fb2a673d2
commit 44a5c8e635
11 changed files with 100 additions and 8 deletions

26
.dockerignore Normal file
View File

@@ -0,0 +1,26 @@
**/__pycache__
**/.classpath
**/.dockerignore
**/.env
**/.git
**/.gitignore
**/.project
**/.settings
**/.toolstarget
**/.vs
**/.vscode
**/*.*proj.user
**/*.dbmdl
**/*.jfm
**/azds.yaml
**/bin
**/charts
**/docker-compose*
**/compose*
**/Dockerfile*
**/node_modules
**/npm-debug.log
**/obj
**/secrets.dev.yaml
**/values.dev.yaml
README.md

25
Dockerfile Normal file
View File

@@ -0,0 +1,25 @@
# For more information, please refer to https://aka.ms/vscode-docker-python
FROM python:3.8-slim-buster
EXPOSE 5000
# Keeps Python from generating .pyc files in the container
ENV PYTHONDONTWRITEBYTECODE=1
# Turns off buffering for easier container logging
ENV PYTHONUNBUFFERED=1
# Install pip requirements
COPY requirements.txt .
RUN python -m pip install -r requirements.txt
WORKDIR /app
COPY . /app
# Creates a non-root user with an explicit UID and adds permission to access the /app folder
# For more info, please refer to https://aka.ms/vscode-docker-python-configure-containers
RUN adduser -u 5678 --disabled-password --gecos "" appuser && chown -R appuser /app
USER appuser
# During debugging, this entry point will be overridden. For more information, please refer to https://aka.ms/vscode-docker-python-debug
CMD ["sh", "-c", "gunicorn --bind 0.0.0.0:$PORT dyxless.__init__:app"]

17
docker-compose.debug.yml Normal file
View File

@@ -0,0 +1,17 @@
version: '3.4'
services:
dyxless:
image: dyxless
build:
context: .
dockerfile: ./Dockerfile
command: ["sh", "-c", "pip install debugpy -t /tmp && python /tmp/debugpy --wait-for-client --listen 0.0.0.0:5678 -m flask run --no-debugger --no-reload --host 0.0.0.0 --port 5000"]
ports:
- 5000:5000
- 5678:5678
working_dir: /dyxless
volumes:
- ./:/dyxless
environment:
- FLASK_APP=dyxless

16
docker-compose.yml Normal file
View File

@@ -0,0 +1,16 @@
version: '3.4'
services:
dyxless:
image: dyxless
build:
context: .
dockerfile: ./Dockerfile
ports:
- 5000:5000
working_dir: /dyxless
volumes:
- ./:/dyxless
environment:
- FLASK_APP=dyxless

View File

@@ -6,6 +6,7 @@ Flask-Login==0.5.0
Flask-Mail==0.9.1
Flask-SQLAlchemy==2.5.1
greenlet==1.1.0
gunicorn==20.1.0
itsdangerous==2.0.1
Jinja2==3.0.1
MarkupSafe==2.0.1

View File

@@ -0,0 +1,2 @@
docker-compose build
docker-compose up

View File

@@ -0,0 +1,4 @@
#!/bin/bash
docker-compose build
docker-compose up

View File

@@ -0,0 +1,3 @@
docker-compose build
heroku container:push web -a dyxless & ^
heroku container:release web -a dyxless

View File

@@ -0,0 +1,5 @@
#!/bin/bash
docker-compose build
heroku container:push web -a dyxless || true
heroku container:release web -a dyxless

View File

@@ -1,7 +0,0 @@
#!/bin/bash
set echo off
export FLASK_APP=dyxless
flask run

View File

@@ -3,4 +3,4 @@
set FLASK_APP=dyxless
flask run
gunicorn --bind 0.0.0.0:$PORT dyxless.__init__:app