mirror of
https://github.com/koush/scrypted.git
synced 2026-02-11 01:32:02 +00:00
58 lines
1.7 KiB
Docker
58 lines
1.7 KiB
Docker
ARG BASE="jammy"
|
|
FROM ubuntu:${BASE} as header
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
# base tools and development stuff
|
|
RUN apt-get update && apt-get -y install \
|
|
curl wget software-properties-common apt-utils \
|
|
build-essential \
|
|
cmake \
|
|
gcc \
|
|
libcairo2-dev \
|
|
libgirepository1.0-dev \
|
|
pkg-config && \
|
|
apt-get -y update && \
|
|
apt-get -y upgrade
|
|
|
|
ARG NODE_VERSION=18
|
|
RUN curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash - && apt-get update && apt-get install -y nodejs
|
|
|
|
# python native
|
|
RUN apt-get -y install \
|
|
python3 \
|
|
python3-dev\
|
|
python3-gst-1.0 \
|
|
python3-pip \
|
|
python3-setuptools \
|
|
python3-wheel
|
|
|
|
# armv7l does not have wheels for any of these
|
|
# and compile times would forever, if it works at all.
|
|
# furthermore, it's possible to run 32bit docker on 64bit arm,
|
|
# which causes weird behavior in python which looks at the arch version
|
|
# which still reports 64bit, even if running in 32bit docker.
|
|
# this scenario is not supported and will be reported at runtime.
|
|
# this bit is not necessary on amd64, but leaving it for consistency.
|
|
RUN apt-get -y install \
|
|
python3-matplotlib \
|
|
python3-numpy \
|
|
python3-opencv \
|
|
python3-pil \
|
|
python3-skimage
|
|
|
|
# python pip
|
|
RUN rm -f /usr/lib/python**/EXTERNALLY-MANAGED
|
|
RUN python3 -m pip install --upgrade pip
|
|
RUN python3 -m pip install debugpy typing_extensions psutil
|
|
|
|
ENV SCRYPTED_INSTALL_ENVIRONMENT="docker"
|
|
ENV SCRYPTED_CAN_RESTART="true"
|
|
ENV SCRYPTED_VOLUME="/server/volume"
|
|
ENV SCRYPTED_INSTALL_PATH="/server"
|
|
|
|
# changing this forces pip and npm to perform reinstalls.
|
|
# if this base image changes, this version must be updated.
|
|
ENV SCRYPTED_BASE_VERSION=20230527
|
|
ENV SCRYPTED_DOCKER_FLAVOR=lite
|