Skip to content

Commit 2e7a38b

Browse files
Update docker base image for arm64 compatibility
1 parent d889c04 commit 2e7a38b

5 files changed

Lines changed: 47 additions & 9 deletions

File tree

backend/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#See Dockerfile.baseimage to see how the baseimage is build.
2-
FROM webmultimedia/http-streaming-server-baseimage:1.0.4
2+
FROM webmultimedia/http-streaming-server-baseimage:1.0.5
33

44
ENV PYTHONUNBUFFERED 1
55

backend/Dockerfile.baseimage

Lines changed: 40 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,51 @@
1-
FROM jrottenberg/ffmpeg:4.4-ubuntu2004
1+
# Use Ubuntu 20.04 as the base image
2+
FROM ubuntu:20.04
3+
4+
# Set environment variables to disable interactive prompts during package install
5+
ENV DEBIAN_FRONTEND=noninteractive
6+
7+
# Update package lists and install dependencies
8+
RUN apt-get update && \
9+
apt-get install -y --no-install-recommends \
10+
python3.8 \
11+
python3-pip \
12+
python3-dev\
13+
curl \
14+
ca-certificates \
15+
build-essential \
16+
transmission-daemon\
17+
pkg-config\
18+
git\
19+
texinfo \
20+
wget \
21+
zlib1g-dev \
22+
libssl-dev \
23+
libx264-dev \
24+
libmp3lame-dev \
25+
libopus-dev \
26+
libvpx-dev \
27+
libx265-dev \
28+
autoconf \
29+
automake \
30+
cmake \
31+
ffmpeg \
32+
libpq-dev \
33+
&& rm -rf /var/lib/apt/lists/*
34+
35+
# Set default Python and pip to python3 versions
36+
RUN ln -s /usr/bin/python3 /usr/bin/python
237
ENV TZ=Europe/Paris
338
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
439

5-
RUN apt-get update -y && apt-get install -y transmission-daemon build-essential pkg-config git zlib1g-dev python3-pip
640

741
COPY ./backend/openssl.cnf /etc/ssl/openssl.cnf
842

43+
# Test ffmpeg
44+
RUN ffmpeg -version
45+
946
RUN git clone --depth=1 --branch v2.0.0 https://github.com/gpac/gpac gpac_public && cd gpac_public && ./configure --static-mp4box && make && make install
1047

11-
RUN apt-get remove -y build-essential pkg-config git
48+
RUN apt-get remove -y build-essential pkg-config git automake autoconf cmake
1249

1350
RUN mkdir /usr/torrent/
1451
RUN chgrp -R debian-transmission /usr/torrent/
@@ -28,6 +65,3 @@ RUN update-rc.d transmission-daemon defaults
2865
ADD ./backend/requirements.txt /srv/requirements.txt
2966
RUN pip3 install -r /srv/requirements.txt
3067

31-
RUN apt-get install git
32-
33-
RUN pip3 install git+https://github.com/Diaoul/subliminal.git@develop

backend/Dockerfile.prod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ RUN npm run build
1515
#Build the backend
1616

1717
#See Dockerfile.baseimage to see how the baseimage is build.
18-
FROM webmultimedia/http-streaming-server-baseimage:1.0.4
18+
FROM webmultimedia/http-streaming-server-baseimage:1.0.5
1919

2020

2121
ENV PYTHONUNBUFFERED 1

backend/requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ django-debug-toolbar==4.1.0
33
psycopg2-binary>=2.8,<2.9
44
dj-database-url==0.4.1
55
ipython==5.3.0
6-
#subliminal==2.1.0
6+
subliminal==2.2.1
77
gunicorn==19.9.0
88
clint==0.5.1
99
django-cors-headers==4.0.0

doc/BuildAndDebugProcess.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ RELEASE BUILD
22
-------------------
33
Be aware that the file coming from the frontend build are copied to backend/static during the build process. If you do some modification in the frontend, don't forget to erase this folder as it can lead to some erratic behavior.
44

5+
To build base image for amd64 and arm64:
6+
7+
docker buildx build --platform linux/amd64 -t webmultimedia/http-streaming-server-baseimage:1.0.4 -f backend/Dockerfile.baseimage .
8+
59
DEBUG BUILD
610
-------------------
711

0 commit comments

Comments
 (0)