Hashii1729 commited on
Commit
82ec91b
·
1 Parent(s): ff1a300

Refactor Dockerfile for improved user creation and permissions; update README and app.py for environment variable consistency

Browse files
Files changed (3) hide show
  1. Dockerfile +5 -1
  2. README.md +1 -0
  3. app.py +12 -2
Dockerfile CHANGED
@@ -10,7 +10,7 @@ RUN apt-get update && apt-get install -y \
10
  && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
11
 
12
  # Create non-root user for security
13
- RUN groupadd -r appuser && useradd -r -g appuser appuser
14
 
15
  # Set working directory
16
  WORKDIR /app
@@ -25,12 +25,16 @@ COPY app.py .
25
  COPY start.sh .
26
  RUN chmod +x start.sh
27
 
 
 
 
28
  # Change ownership to non-root user
29
  RUN chown -R appuser:appuser /app
30
 
31
  # Set environment variables
32
  ENV OLLAMA_HOST=0.0.0.0:11434
33
  ENV OLLAMA_ORIGINS=*
 
34
 
35
  # Expose ports
36
  EXPOSE 7860
 
10
  && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
11
 
12
  # Create non-root user for security
13
+ RUN groupadd -r appuser && useradd -r -g appuser -m appuser
14
 
15
  # Set working directory
16
  WORKDIR /app
 
25
  COPY start.sh .
26
  RUN chmod +x start.sh
27
 
28
+ # Create Ollama directory and set permissions
29
+ RUN mkdir -p /home/appuser/.ollama && chown -R appuser:appuser /home/appuser/.ollama
30
+
31
  # Change ownership to non-root user
32
  RUN chown -R appuser:appuser /app
33
 
34
  # Set environment variables
35
  ENV OLLAMA_HOST=0.0.0.0:11434
36
  ENV OLLAMA_ORIGINS=*
37
+ ENV HOME=/home/appuser
38
 
39
  # Expose ports
40
  EXPOSE 7860
README.md CHANGED
@@ -4,6 +4,7 @@ emoji: 📚
4
  colorFrom: gray
5
  colorTo: green
6
  sdk: docker
 
7
  pinned: false
8
  license: mit
9
  ---
 
4
  colorFrom: gray
5
  colorTo: green
6
  sdk: docker
7
+ app_port: 7860
8
  pinned: false
9
  license: mit
10
  ---
app.py CHANGED
@@ -7,17 +7,27 @@ This file serves as the main entry point for the Hugging Face Space.
7
  import os
8
  import sys
9
  import uvicorn
 
 
 
 
 
10
  from fast import app
11
 
12
  # Ensure the app runs on the correct port for Hugging Face Spaces
13
  PORT = int(os.environ.get("PORT", 7860))
14
  HOST = "0.0.0.0"
15
 
 
 
 
 
16
  if __name__ == "__main__":
17
  print(f"Starting Vestiq Fashion Analyzer on {HOST}:{PORT}")
 
18
  uvicorn.run(
19
- app,
20
- host=HOST,
21
  port=PORT,
22
  log_level="info"
23
  )
 
7
  import os
8
  import sys
9
  import uvicorn
10
+
11
+ # Add the current directory to Python path
12
+ sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
13
+
14
+ # Import the FastAPI app
15
  from fast import app
16
 
17
  # Ensure the app runs on the correct port for Hugging Face Spaces
18
  PORT = int(os.environ.get("PORT", 7860))
19
  HOST = "0.0.0.0"
20
 
21
+ # For Hugging Face Spaces, we need to make sure the app is available at module level
22
+ # This allows HF to detect it properly
23
+ application = app
24
+
25
  if __name__ == "__main__":
26
  print(f"Starting Vestiq Fashion Analyzer on {HOST}:{PORT}")
27
+ print(f"Environment: {os.environ.get('SPACE_ID', 'local')}")
28
  uvicorn.run(
29
+ app,
30
+ host=HOST,
31
  port=PORT,
32
  log_level="info"
33
  )