hisham-cmd commited on
Commit
b70d0d8
·
verified ·
1 Parent(s): cad3abb

Upload Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +28 -1
Dockerfile CHANGED
@@ -2,15 +2,42 @@ FROM python:3.11-slim
2
 
3
  WORKDIR /app
4
 
 
5
  RUN apt-get update && apt-get install -y \
6
  build-essential \
7
  libpq-dev \
 
 
 
8
  && rm -rf /var/lib/apt/lists/*
9
 
 
 
 
 
 
 
 
10
  COPY requirements.txt .
11
  RUN pip install --no-cache-dir -r requirements.txt
12
 
 
13
  COPY . .
14
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  EXPOSE 7860
16
- CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]
 
 
 
2
 
3
  WORKDIR /app
4
 
5
+ # Install dependencies, PostgreSQL, and Supervisor
6
  RUN apt-get update && apt-get install -y \
7
  build-essential \
8
  libpq-dev \
9
+ postgresql-15 \
10
+ postgresql-client-15 \
11
+ supervisor \
12
  && rm -rf /var/lib/apt/lists/*
13
 
14
+ # Set up PostgreSQL directories and permissions
15
+ RUN mkdir -p /var/run/postgresql && chown -R postgres:postgres /var/run/postgresql \
16
+ && mkdir -p /var/lib/postgresql/data && chown -R postgres:postgres /var/lib/postgresql/data
17
+
18
+ USER root
19
+
20
+ # Copy requirements and install python packages
21
  COPY requirements.txt .
22
  RUN pip install --no-cache-dir -r requirements.txt
23
 
24
+ # Copy application files
25
  COPY . .
26
 
27
+ # Copy and setup supervisor config
28
+ COPY supervisord.conf /etc/supervisor/supervisord.conf
29
+
30
+ # Setup start script
31
+ COPY start.sh /start.sh
32
+ RUN chmod +x /start.sh
33
+
34
+ # Environment variables for default DB setup if not provided
35
+ ENV DB_USER=admin
36
+ ENV DB_PASSWORD=admin123
37
+ ENV DB_NAME=growth_panel_db
38
+ ENV DATABASE_URL=postgresql+asyncpg://admin:admin123@localhost:5432/growth_panel_db
39
+
40
  EXPOSE 7860
41
+ EXPOSE 5432
42
+
43
+ CMD ["/start.sh"]