|
FROM python:3.9-slim
|
|
|
|
WORKDIR /app
|
|
|
|
# Install necessary packages
|
|
RUN pip install --no-cache-dir flask gunicorn requests
|
|
|
|
# Copy the HTML file
|
|
COPY index.html /app/static/index.html
|
|
|
|
# Create a Flask app with API proxy
|
|
RUN echo 'from flask import Flask, redirect, jsonify\n\
|
|
import requests\n\
|
|
import json\n\
|
|
\n\
|
|
app = Flask(__name__, static_folder="static")\n\
|
|
\n\
|
|
@app.route("/")\n\
|
|
def index():\n\
|
|
return redirect("/static/index.html")\n\
|
|
\n\
|
|
@app.route("/api/trading-data")\n\
|
|
def trading_data():\n\
|
|
try:\n\
|
|
response = requests.get("https://badimo.nyc3.digitaloceanspaces.com/trade/frequency/snapshot/month/latest.json")\n\
|
|
return response.text, response.status_code\n\
|
|
except Exception as e:\n\
|
|
return jsonify({"error": str(e)}), 500\n\
|
|
\n\
|
|
if __name__ == "__main__":\n\
|
|
app.run(host="0.0.0.0", port=7860)\n\
|
|
' > /app/app.py
|
|
|
|
# Expose the port that HuggingFace Spaces expects
|
|
EXPOSE 7860
|
|
|
|
# Start the server
|
|
CMD ["gunicorn", "-b", "0.0.0.0:7860", "app:app"]
|
|
|