-
Notifications
You must be signed in to change notification settings - Fork 67
/
Dockerfile
46 lines (33 loc) · 1.02 KB
/
Dockerfile
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
40
41
42
43
44
45
46
# This Dockerfile assembles an image with all the dependencies required to run
# speculos from the command-line (--display headless or --display console, no
# GUI).
#
# Building the Speculos environment
FROM ghcr.io/ledgerhq/speculos-builder:latest AS builder
ADD . /speculos
WORKDIR /speculos/
RUN cmake -Bbuild -H. -DPRECOMPILED_DEPENDENCIES_DIR=/install -DWITH_VNC=1
RUN make -C build
# Preparing final image
FROM docker.io/library/python:3.9-slim
ADD . /speculos
WORKDIR /speculos
# Copying artifacts from previous build
COPY --from=builder /speculos/speculos/resources/ /speculos/speculos/resources/
RUN pip install --upgrade pip pipenv
RUN pipenv install --deploy --system
RUN apt-get update && apt-get install -qy \
qemu-user-static \
libvncserver-dev \
gdb-multiarch \
binutils-arm-none-eabi \
&& apt-get clean
RUN apt-get clean && rm -rf /var/lib/apt/lists/
# default port for dev env
EXPOSE 1234
EXPOSE 1236
EXPOSE 9999
EXPOSE 40000
EXPOSE 41000
EXPOSE 42000
ENTRYPOINT [ "python", "./speculos.py" ]