This repository was archived by the owner on Aug 18, 2022. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathDockerfile
More file actions
39 lines (30 loc) · 1.12 KB
/
Dockerfile
File metadata and controls
39 lines (30 loc) · 1.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
FROM python:3.8-slim
# Install java
RUN set -eux; \
mkdir -p /usr/share/man/man1; \
apt-get update; \
apt-get install --no-install-recommends -y \
openjdk-11-jre-headless \
wget \
; \
rm -rf /var/lib/apt/lists/*
# Download & Install signal-cli
ENV SIGNAL_CLI_VERSION=0.8.1
RUN cd /tmp/ \
&& wget https://github.com/AsamK/signal-cli/releases/download/v"${SIGNAL_CLI_VERSION}"/signal-cli-"${SIGNAL_CLI_VERSION}".tar.gz \
&& tar xf signal-cli-"${SIGNAL_CLI_VERSION}".tar.gz -C /opt \
&& ln -s /opt/signal-cli-"${SIGNAL_CLI_VERSION}"/bin/signal-cli /usr/bin/si\
gnal-cli
# Copy poetry.lock* in case it doesn't exist in the repo
COPY ./pyproject.toml ./poetry.lock* ./
# Install Poetry & disable virtualenv creation
RUN pip install --no-cache poetry && \
poetry config virtualenvs.create false
RUN poetry install --no-root --no-dev && \
rm -rf ~/.cache/{pip,pypoetry}
# Copy app
COPY ./signal_cli_rest_api/ signal_cli_rest_api/
# Prepare mount point for signal-cli
RUN mkdir -p $HOME/.config/signal-cli
EXPOSE 8000
CMD ["uvicorn", "signal_cli_rest_api.main:app", "--host", "0.0.0.0"]