kisejin commited on
Commit
47d74e9
·
1 Parent(s): c07929f

Initial commit

Browse files
Files changed (3) hide show
  1. Dockerfile +27 -0
  2. app.py +15 -0
  3. requirements.txt +71 -0
Dockerfile ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Use an official Python runtime as a parent image
2
+ FROM python:3.10.14
3
+
4
+ RUN useradd -m -u 1000 user
5
+ USER user
6
+ ENV PATH="/home/user/.local/bin:$PATH"
7
+
8
+ # Set the working directory in the container
9
+ WORKDIR /app
10
+ COPY --chown=user ./requirements.txt requirements.txt
11
+
12
+
13
+ # Install system dependencies
14
+ RUN apt-get update && apt-get install -y --no-install-recommends \
15
+ build-essential \
16
+ && rm -rf /var/lib/apt/lists/*
17
+
18
+ RUN pip install --no-cache-dir --upgrade -r requirements.txt
19
+
20
+ # Copy the current directory contents into the container at /app
21
+ COPY --chown=user . /app
22
+
23
+ # # Make port 6006 available to the world outside this container
24
+ # EXPOSE 6006
25
+
26
+ # Run app.py when the container launches
27
+ CMD ["python", "app.py", "--host", "0.0.0.0", "--port", "7860"]
app.py ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+
3
+ import phoenix as px
4
+
5
+ if __name__ == "__main__":
6
+ # The port is already set in the Dockerfile, so we don't need to set it here
7
+ os.environ["PHOENIX_PORT"] = "7860"
8
+ app = px.launch_app()
9
+ print("Phoenix app launched successfully!")
10
+
11
+ # Keep the script running
12
+ import time
13
+
14
+ while True:
15
+ time.sleep(1)
requirements.txt ADDED
@@ -0,0 +1,71 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ aioitertools==0.11.0
2
+ aiosqlite==0.20.0
3
+ alembic==1.13.2
4
+ anyio==4.4.0
5
+ arize-phoenix==4.12.0
6
+ arize-phoenix-evals==0.14.1
7
+ cachetools==5.4.0
8
+ certifi==2024.7.4
9
+ charset-normalizer==3.3.2
10
+ click==8.1.7
11
+ Cython==0.29.37
12
+ Deprecated==1.2.14
13
+ exceptiongroup==1.2.2
14
+ googleapis-common-protos==1.63.2
15
+ graphql-core==3.2.3
16
+ greenlet==3.0.3
17
+ grpcio==1.65.1
18
+ h11==0.14.0
19
+ hdbscan==0.8.37
20
+ httpcore==1.0.5
21
+ httpx==0.27.0
22
+ idna==3.7
23
+ importlib_metadata==7.1.0
24
+ Jinja2==3.1.4
25
+ joblib==1.4.2
26
+ llvmlite==0.43.0
27
+ Mako==1.3.5
28
+ MarkupSafe==2.1.5
29
+ numba==0.60.0
30
+ numpy==1.26.4
31
+ openinference-instrumentation==0.1.8
32
+ openinference-instrumentation-langchain==0.1.22
33
+ openinference-instrumentation-llama-index==2.1.0
34
+ openinference-instrumentation-openai==0.1.8
35
+ openinference-semantic-conventions==0.1.9
36
+ opentelemetry-api==1.25.0
37
+ opentelemetry-exporter-otlp==1.25.0
38
+ opentelemetry-exporter-otlp-proto-common==1.25.0
39
+ opentelemetry-exporter-otlp-proto-grpc==1.25.0
40
+ opentelemetry-exporter-otlp-proto-http==1.25.0
41
+ opentelemetry-instrumentation==0.46b0
42
+ opentelemetry-proto==1.25.0
43
+ opentelemetry-sdk==1.25.0
44
+ opentelemetry-semantic-conventions==0.46b0
45
+ pandas==2.2.2
46
+ protobuf==4.25.3
47
+ psutil==6.0.0
48
+ pyarrow==17.0.0
49
+ pynndescent==0.5.13
50
+ python-dateutil==2.9.0.post0
51
+ python-multipart==0.0.9
52
+ pytz==2024.1
53
+ PyYAML==6.0.1
54
+ requests==2.32.3
55
+ scikit-learn==1.5.1
56
+ scipy==1.14.0
57
+ six==1.16.0
58
+ sniffio==1.3.1
59
+ SQLAlchemy==2.0.31
60
+ sqlean.py==3.45.1
61
+ starlette==0.38.0
62
+ strawberry-graphql==0.235.0
63
+ threadpoolctl==3.5.0
64
+ tqdm==4.66.4
65
+ typing_extensions==4.12.2
66
+ tzdata==2024.1
67
+ umap-learn==0.5.6
68
+ urllib3==2.2.2
69
+ uvicorn==0.30.3
70
+ wrapt==1.16.0
71
+ zipp==3.19.2