|
1 | | -FROM python:3.11-slim-bullseye as build |
2 | | -WORKDIR /wheels |
| 1 | +# Release instructions: |
| 2 | + # 1. Update the version tag in the Dockerfile to match the version in sherlock/__init__.py |
| 3 | + # 2. Update the VCS_REF tag to match the tagged version's FULL commit hash |
| 4 | + # 3. Build image with BOTH latest and version tags |
| 5 | + # i.e. `docker build -t sherlock/sherlock:0.15.0 -t sherlock/sherlock:latest .` |
| 6 | + |
| 7 | +FROM python:3.12-slim-bullseye as build |
| 8 | +WORKDIR /sherlock |
3 | 9 |
|
4 | | -COPY requirements.txt /opt/sherlock/ |
5 | 10 | RUN apt-get update \ |
6 | | - && apt-get install -y build-essential \ |
7 | | - && pip3 wheel -r /opt/sherlock/requirements.txt |
| 11 | + pip3 install --no-cache-dir --upgrade pip |
8 | 12 |
|
9 | | -FROM python:3.11-slim-bullseye |
10 | | -WORKDIR /opt/sherlock |
| 13 | +FROM python:3.12-slim-bullseye |
| 14 | +WORKDIR /sherlock |
11 | 15 |
|
12 | | -ARG VCS_REF |
| 16 | +ARG VCS_REF= # CHANGE ME ON UPDATE |
13 | 17 | ARG VCS_URL="https://github.com/sherlock-project/sherlock" |
| 18 | +ARG VERSION_TAG= # CHANGE ME ON UPDATE |
14 | 19 |
|
15 | | -LABEL org.label-schema.vcs-ref=$VCS_REF \ |
16 | | - org.label-schema.vcs-url=$VCS_URL |
| 20 | +ENV SHERLOCK_ENV=docker |
17 | 21 |
|
18 | | -COPY --from=build /wheels /wheels |
19 | | -COPY . /opt/sherlock/ |
| 22 | +LABEL org.label-schema.vcs-ref=$VCS_REF \ |
| 23 | + org.label-schema.vcs-url=$VCS_URL \ |
| 24 | + org.label-schema.name="Sherlock" \ |
| 25 | + org.label-schema.version=$VERSION_TAG \ |
| 26 | + website="https://sherlockproject.xyz" |
20 | 27 |
|
21 | | -RUN pip3 install --no-cache-dir . -f /wheels \ |
22 | | - && rm -rf /wheels |
| 28 | +RUN pip3 install --no-cache-dir sherlock-project==$VERSION_TAG |
23 | 29 |
|
24 | | -WORKDIR /opt/sherlock/sherlock |
| 30 | +WORKDIR /sherlock |
25 | 31 |
|
26 | 32 | ENTRYPOINT ["sherlock"] |
0 commit comments