diff --git a/Dockerfile b/Dockerfile index 4188f50..7d9a4b6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,20 +2,14 @@ FROM python:3.10-slim # Set environment variables for the MPV socket and server host/port -ENV MPV_SOCKET="/tmp/mpvsocket" \ - HOST_NAME="0.0.0.0" \ - PORT_NUMBER=8080 \ - MYSQL_HOST="localhost" \ - MYSQL_USER="mpvuser" \ - MYSQL_PASSWORD="SecretPassword" \ - MYSQL_DATABASE="mpv" \ - MYSQL_PORT=3306 +ENV LISTEN_ADDRESS="0.0.0.0" \ + LISTEN_PORT=8080 # Set the working directory in the container WORKDIR /app # Copy the current directory contents into the container at /app -COPY server.py /app/server.py +COPY server.py requirements.txt /app/ # Install any needed packages specified in requirements.txt # If there are no external dependencies, you can skip this step @@ -24,7 +18,8 @@ COPY server.py /app/server.py # Make port 8080 available to the world outside this container EXPOSE "${PORT_NUMBER}" -RUN pip3 install --no-cache-dir Flask mysql-connector-python +RUN pip3 install --no-cache-dir -r requirements.txt # Run server.py when the container launches -CMD ["python3", "server.py", "--host", "${HOST_NAME}", "--port", "${PORT_NUMBER}", "--input-ipc-server", "${MPV_SOCKET}"] +# CMD ["python3", "server.py", "--host", "${LISTEN_ADDRESS}", "--port", "${LISTEN_PORT}", "--input-ipc-server", "${MPV_SOCKET}"] +CMD gunicorn --bind "${LISTEN_ADDRESS}":"${LISTEN_PORT}" server:app diff --git a/requirements.txt b/requirements.txt index 9705fea..3f0fa14 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,8 +1,10 @@ blinker==1.8.2 click==8.1.7 Flask==3.0.3 +gunicorn==23.0.0 itsdangerous==2.2.0 Jinja2==3.1.4 MarkupSafe==2.1.5 mysql-connector-python==9.0.0 +packaging==24.1 Werkzeug==3.0.4