FROM debian:latest ENV CRONICLE_VERSION=0.9.65 # Install cron and required utilities. RUN apt-get update RUN apt-get -y install \ build-essential \ openssl \ git \ subversion \ gnupg \ procps \ curl \ jq \ gawk \ sed \ grep \ sqlite3 \ less \ bc \ wget \ rclone \ ffmpeg \ python3 \ python3-pip \ pipx # Install node-js RUN curl -fsSL https://deb.nodesource.com/setup_current.x | bash - && \ apt-get install -y nodejs RUN node --version && npm --version # Build cronicle WORKDIR /opt/cronicle RUN curl -L -o /tmp/Cronicle-${CRONICLE_VERSION}.tar.gz https://github.com/jhuckaby/Cronicle/archive/refs/tags/v${CRONICLE_VERSION}.tar.gz # COPY Cronicle-${CRONICLE_VERSION}.tar.gz /tmp/ RUN tar zxvf /tmp/Cronicle-${CRONICLE_VERSION}.tar.gz -C /tmp/ && \ mv /tmp/Cronicle-${CRONICLE_VERSION}/* . && \ rm -rf /tmp/* && \ npm install --global yarn && \ yarn COPY ./patches /tmp/patches RUN patch -p3 < /tmp/patches/engine.patch lib/engine.js COPY docker-entrypoint.js ./bin/ ENV CRONICLE_foreground=1 ENV CRONICLE_echo=1 ENV CRONICLE_color=1 ENV debug_level=1 ENV HOSTNAME=main RUN node bin/build.js dist && bin/control.sh setup #FROM node:18-alpine #RUN apk add procps curl #COPY --from=builder /opt/cronicle/ /opt/cronicle/ #WORKDIR /opt/cronicle #ENV CRONICLE_foreground=1 #ENV CRONICLE_echo=1 #ENV CRONICLE_color=1 #ENV debug_level=1 #ENV HOSTNAME=main #RUN node bin/build.js dist && bin/control.sh setup ########################################################################### # BEGIN TOOLS # ########################################################################### # Install selenium for web automation. RUN wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \ echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list && \ apt-get update && apt-get -y install google-chrome-stable RUN CHROMEDRIVER_FORCE_DOWNLOAD=true npm install -g selenium-side-runner chromedriver # Install xidel RUN curl -L -s https://sourceforge.net/projects/videlibri/files/Xidel/Xidel%200.9.8/xidel_0.9.8-1_amd64.deb/download -o /tmp/xidel.deb && \ apt-get install -f -y /tmp/xidel.deb && \ rm /tmp/xidel.deb # Install YouTube downloader. RUN mkdir -p /opt/pipx && \ export PIPX_HOME=/opt/pipx && \ export PIPX_BIN_DIR=/usr/local/bin && \ pipx install yt-dlp # HDHomeRun RUN git clone https://github.com/Silicondust/libhdhomerun.git /tmp/libhdhomerun && \ cd /tmp/libhdhomerun && \ make && \ cp hdhomerun_config /usr/local/bin/ && \ cp libhdhomerun.so /usr/local/lib/ ########################################################################### # END TOOLS # ########################################################################### CMD ["node", "bin/docker-entrypoint.js"]