Docker buid issue
This commit is contained in:
@ -6,14 +6,21 @@ PAYU_MERCHANT_SALT=DusXSSjqqSMTPSpw32hlFXF6LKY2Zm3y
|
||||
PAYU_SUCCESS_URL=http://localhost:4200/payment-success
|
||||
PAYU_FAILURE_URL=http://localhost:4200/payment-failure
|
||||
|
||||
# Flask Configuration
|
||||
FLASK_ENV=production
|
||||
FLASK_APP=run.py
|
||||
|
||||
# MySQL Configuration (for production/Docker)
|
||||
MYSQL_HOST=db
|
||||
MYSQL_USER=vendinguser
|
||||
MYSQL_PASSWORD=vendingpass
|
||||
MYSQL_DATABASE=vending
|
||||
|
||||
SQLITE_DB_PATH=machines
|
||||
# SQLite Configuration (for development)
|
||||
SQLITE_DB_PATH=machines.db
|
||||
|
||||
# SQLAlchemy Configuration
|
||||
SQLALCHEMY_ECHO=False
|
||||
|
||||
BREVO_SMTP_EMAIL=smukeshsn2000@gmail.com
|
||||
BREVO_SMTP_KEY=your-brevo-smtp-key
|
||||
|
||||
@ -7,6 +7,11 @@ WORKDIR /app
|
||||
# Prevent Python from buffering stdout/stderr
|
||||
ENV PYTHONUNBUFFERED=1
|
||||
|
||||
# Install mysql-client for database connectivity checks
|
||||
RUN apt-get update && \
|
||||
apt-get install -y default-mysql-client curl && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Copy requirements first for better caching
|
||||
COPY requirements.txt .
|
||||
|
||||
@ -28,4 +33,4 @@ ENV FLASK_RUN_PORT=5000
|
||||
EXPOSE 5000
|
||||
|
||||
# Use Gunicorn for production
|
||||
CMD ["gunicorn", "--bind", "0.0.0.0:5000", "run:app"]
|
||||
CMD ["gunicorn", "--bind", "0.0.0.0:5000", "run:app"]
|
||||
@ -42,8 +42,9 @@ def create_app():
|
||||
if not all([mysql_host, mysql_user, mysql_password, mysql_db]):
|
||||
raise ValueError("Missing required MySQL environment variables")
|
||||
|
||||
# FIXED: Use port 3306 (internal Docker port, not the host port 3307)
|
||||
app.config['SQLALCHEMY_DATABASE_URI'] = (
|
||||
f'mysql+pymysql://{mysql_user}:{mysql_password}@{mysql_host}:3307/{mysql_db}'
|
||||
f'mysql+pymysql://{mysql_user}:{mysql_password}@{mysql_host}:3306/{mysql_db}'
|
||||
)
|
||||
else:
|
||||
sqlite_db_path = os.getenv('SQLITE_DB_PATH', 'machines.db')
|
||||
|
||||
Reference in New Issue
Block a user