Workflow-Engine / Dockerfile
Severian's picture
Update Dockerfile for correct directory structure
a4bef0b
raw
history blame
1.08 kB
# Use Python as base image since it's the main application runtime
FROM python:3.10-slim-bookworm
# Install required system dependencies
RUN apt-get update && apt-get install -y \
curl \
nodejs \
npm \
&& rm -rf /var/lib/apt/lists/*
# Set working directory
WORKDIR /app
# Copy application files
COPY api/ /app/api/
COPY web/ /app/web/
# Install Python dependencies for API
WORKDIR /app/api
RUN pip install poetry && \
poetry config virtualenvs.create false && \
poetry install --no-dev
# Install Node.js dependencies and build web frontend
WORKDIR /app/web
RUN npm install && \
npm run build
# Set environment variables
ENV FLASK_APP=app.py
ENV EDITION=SELF_HOSTED
ENV DEPLOY_ENV=PRODUCTION
ENV CONSOLE_API_URL=http://127.0.0.1:5001
ENV CONSOLE_WEB_URL=http://127.0.0.1:3000
ENV SERVICE_API_URL=http://127.0.0.1:5001
ENV APP_WEB_URL=http://127.0.0.1:3000
# Expose ports
EXPOSE 3000 5001
# Copy and setup entrypoint script
COPY docker/entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
# Start both API and web services
CMD ["/entrypoint.sh"]