Setup Docker infrastructure for GoMag vending import system
- Add Flask admin interface with Oracle connection pool - Create ARTICOLE_TERTI table for SKU mappings - Configure Docker container with Oracle Instant Client - Setup project documentation and requirements 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
33
api/Dockerfile
Normal file
33
api/Dockerfile
Normal file
@@ -0,0 +1,33 @@
|
||||
# Multi-stage build for Oracle Instant Client + Python Flask
|
||||
FROM python:3.11.4-slim-buster as oracle_base
|
||||
|
||||
# Installing Oracle instant client
|
||||
WORKDIR /opt/oracle
|
||||
RUN apt-get update && apt-get install -y libaio1 wget unzip curl \
|
||||
&& wget https://download.oracle.com/otn_software/linux/instantclient/instantclient-basiclite-linuxx64.zip \
|
||||
&& unzip instantclient-basiclite-linuxx64.zip \
|
||||
&& rm -f instantclient-basiclite-linuxx64.zip \
|
||||
&& cd /opt/oracle/instantclient* \
|
||||
&& rm -f *jdbc* *occi* *mysql* *README *jar uidrvci genezi adrci \
|
||||
&& echo /opt/oracle/instantclient* > /etc/ld.so.conf.d/oracle-instantclient.conf \
|
||||
&& ldconfig
|
||||
|
||||
# Application layer
|
||||
FROM oracle_base
|
||||
WORKDIR /app
|
||||
|
||||
# Copy TNS configuration for Oracle connection
|
||||
COPY tnsnames.ora /app/tnsnames.ora
|
||||
COPY requirements.txt /app/requirements.txt
|
||||
|
||||
# Install Python dependencies
|
||||
RUN pip3 install -r requirements.txt
|
||||
|
||||
# Copy application code
|
||||
COPY . .
|
||||
|
||||
# Health check endpoint
|
||||
EXPOSE 5000
|
||||
|
||||
# Run Flask application
|
||||
CMD ["gunicorn", "--bind", "0.0.0.0:5000", "admin:app", "--reload", "--access-logfile", "-"]
|
||||
Reference in New Issue
Block a user