bump/pin python:3.12-alpine3.20

 - separate direct/indirect python deps
 - bump prometheus-es-exporter from 0.14.0 to 0.14.1
 - pin elasticsearch==7.13.4

Related-To: PRODX-47206
Change-Id: I886aafab5e35da6dbca018bfe234457f2602ec06
diff --git a/Dockerfile b/Dockerfile
index c0ce628..d1d3a11 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,12 +1,9 @@
-FROM python:3.9.15-alpine3.16
-
-LABEL build_date="2022-11-21"
-
-RUN apk upgrade --update
+FROM python:3.12-alpine3.20
 
 WORKDIR /usr/src/app
 COPY requirements.txt /usr/src/app/
-RUN pip install --upgrade pip -r requirements.txt
+RUN apk upgrade --no-cache && \
+    pip install --upgrade pip -r requirements.txt
 
 EXPOSE 9206
 
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..3bf6031
--- /dev/null
+++ b/README.md
@@ -0,0 +1,10 @@
+## Keeping up-to-date
+
+Install pip-tools (pip example):
+```
+pip install pip-tools
+```
+Generate new dependencies (or first update direct dependencies in [requirements.in](requirements.in)):
+```
+pip-compile --upgrade requirements.in
+```
\ No newline at end of file
diff --git a/requirements.in b/requirements.in
new file mode 100644
index 0000000..68d62b4
--- /dev/null
+++ b/requirements.in
@@ -0,0 +1,5 @@
+# direct
+prometheus-es-exporter==0.14.1
+
+# indirect: pinned to avoid OpenSearch incompatibility issues
+elasticsearch==7.13.4
\ No newline at end of file
diff --git a/requirements.txt b/requirements.txt
index b516bbe..62ba2e6 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,10 +1,28 @@
-certifi>=2022.12.7
-click==8.0.1
+#
+# This file is autogenerated by pip-compile with Python 3.12
+# by the following command:
+#
+#    pip-compile requirements.in
+#
+certifi==2024.8.30
+    # via elasticsearch
+click==8.1.7
+    # via
+    #   click-config-file
+    #   prometheus-es-exporter
 click-config-file==0.6.0
-configobj==5.0.6
+    # via prometheus-es-exporter
+configobj==5.0.9
+    # via click-config-file
 elasticsearch==7.13.4
+    # via
+    #   -r requirements.in
+    #   prometheus-es-exporter
 jog==0.1.1
-prometheus-client==0.11.0
-prometheus-es-exporter==0.14.0
-six==1.16.0
-urllib3>=1.26.6,<2.0.0
+    # via prometheus-es-exporter
+prometheus-client==0.21.0
+    # via prometheus-es-exporter
+prometheus-es-exporter==0.14.1
+    # via -r requirements.in
+urllib3==1.26.20
+    # via elasticsearch