| COPY /root-out/ / # buildkit |
| ARG BUILD_DATE=2026-06-04T21:20:59+00:00 |
| ARG VERSION=8effcce2-ls72 |
| ARG MODS_VERSION=v3 |
| ARG PKG_INST_VERSION=v1 |
| ARG LSIOWN_VERSION=v1 |
| ARG WITHCONTENV_VERSION=v1 |
| LABEL build_version=Linuxserver.io version:- 8effcce2-ls72 Build-date:- 2026-06-04T21:20:59+00:00 |
| LABEL maintainer=TheLamer |
| ADD --chmod=755 https://raw.githubusercontent.com/linuxserver/docker-mods/mod-scripts/docker-mods.v3 /docker-mods # buildkit |
| ADD --chmod=755 https://raw.githubusercontent.com/linuxserver/docker-mods/mod-scripts/package-install.v1 /etc/s6-overlay/s6-rc.d/init-mods-package-install/run # buildkit |
| ADD --chmod=755 https://raw.githubusercontent.com/linuxserver/docker-mods/mod-scripts/lsiown.v1 /usr/bin/lsiown # buildkit |
| ADD --chmod=755 https://raw.githubusercontent.com/linuxserver/docker-mods/mod-scripts/with-contenv.v1 /usr/bin/with-contenv # buildkit |
| ARG DEBIAN_FRONTEND=noninteractive |
| ENV HOME=/root LANGUAGE=en_US.UTF-8 LANG=en_US.UTF-8 TERM=xterm S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 S6_VERBOSITY=1 S6_STAGE2_HOOK=/docker-mods VIRTUAL_ENV=/lsiopy PATH=/lsiopy/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| COPY sources.list /etc/apt/ # buildkit |
| RUN |7 BUILD_DATE=2026-06-04T21:20:59+00:00 VERSION=8effcce2-ls72 MODS_VERSION=v3 PKG_INST_VERSION=v1 LSIOWN_VERSION=v1 WITHCONTENV_VERSION=v1 DEBIAN_FRONTEND=noninteractive /bin/sh -c echo "**** Ripped from Ubuntu Docker Logic ****" && rm -f /etc/apt/sources.list.d/ubuntu.sources && set -xe && echo '#!/bin/sh' > /usr/sbin/policy-rc.d && echo 'exit 101' >> /usr/sbin/policy-rc.d && chmod +x /usr/sbin/policy-rc.d && dpkg-divert --local --rename --add /sbin/initctl && cp -a /usr/sbin/policy-rc.d /sbin/initctl && sed -i 's/^exit.*/exit 0/' /sbin/initctl && echo 'force-unsafe-io' > /etc/dpkg/dpkg.cfg.d/docker-apt-speedup && echo 'DPkg::Post-Invoke { "rm -f /var/cache/apt/archives/*.deb /var/cache/apt/archives/partial/*.deb /var/cache/apt/*.bin || true"; };' > /etc/apt/apt.conf.d/docker-clean && echo 'APT::Update::Post-Invoke { "rm -f /var/cache/apt/archives/*.deb /var/cache/apt/archives/partial/*.deb /var/cache/apt/*.bin || true"; };' >> /etc/apt/apt.conf.d/docker-clean && echo 'Dir::Cache::pkgcache ""; Dir::Cache::srcpkgcache "";' >> /etc/apt/apt.conf.d/docker-clean && echo 'Acquire::Languages "none";' > /etc/apt/apt.conf.d/docker-no-languages && echo 'Acquire::GzipIndexes "true"; Acquire::CompressionTypes::Order:: "gz";' > /etc/apt/apt.conf.d/docker-gzip-indexes && echo 'Apt::AutoRemove::SuggestsImportant "false";' > /etc/apt/apt.conf.d/docker-autoremove-suggests && mkdir -p /run/systemd && echo 'docker' > /run/systemd/container && echo "**** install apt-utils and locales ****" && apt-get update && apt-get upgrade -y && apt-get install -y apt-utils locales && echo "**** install packages ****" && apt-get install -y catatonit cron curl gnupg jq netcat-openbsd systemd-standalone-sysusers tzdata && echo "**** generate locale ****" && locale-gen en_US.UTF-8 && echo "**** create abc user and make our folders ****" && useradd -u 911 -U -d /config -s /bin/false abc && usermod -G users abc && mkdir -p /app /config /defaults /lsiopy && echo "**** cleanup ****" && userdel ubuntu && apt-get autoremove && apt-get clean && rm -rf /tmp/* /var/lib/apt/lists/* /var/tmp/* /var/log/* # buildkit |
| COPY root/ / # buildkit |
| ENTRYPOINT ["/init"] |
| ENV LSIO_FIRST_PARTY=true |
| ARG BUILD_DATE=2026-06-06T21:10:09+00:00 |
| ARG VERSION=4.123.0-ls343 |
| ARG CODE_RELEASE=4.123.0 |
| LABEL build_version=Linuxserver.io version:- 4.123.0-ls343 Build-date:- 2026-06-06T21:10:09+00:00 |
| LABEL maintainer=aptalca |
| ARG DEBIAN_FRONTEND=noninteractive |
| ENV HOME=/config |
| RUN |4 BUILD_DATE=2026-06-06T21:10:09+00:00 VERSION=4.123.0-ls343 CODE_RELEASE=4.123.0 DEBIAN_FRONTEND=noninteractive /bin/sh -c echo "**** install runtime dependencies ****" && apt-get update && apt-get install -y git libatomic1 nano net-tools sudo && echo "**** install code-server ****" && if [ -z ${CODE_RELEASE+x} ]; then CODE_RELEASE=$(curl -sX GET https://api.github.com/repos/coder/code-server/releases/latest | awk '/tag_name/{print $4;exit}' FS='[""]' | sed 's|^v||'); fi && mkdir -p /app/code-server && curl -o /tmp/code-server.tar.gz -L "https://github.com/coder/code-server/releases/download/v${CODE_RELEASE}/code-server-${CODE_RELEASE}-linux-amd64.tar.gz" && tar xf /tmp/code-server.tar.gz -C /app/code-server --strip-components=1 && printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && echo "**** clean up ****" && apt-get clean && rm -rf /config/* /tmp/* /var/lib/apt/lists/* /var/tmp/* # buildkit |
| COPY /root / # buildkit |
| EXPOSE [8443/tcp] |
| ARG TARGETARCH=amd64 |
| ENV DEBIAN_FRONTEND=noninteractive |
| ENV GO_VERSION=1.26.4 UV_PYTHON_INSTALL_DIR=/usr/local/uv-python RUSTUP_HOME=/usr/local/rustup CARGO_HOME=/usr/local/cargo GOPATH=/go UV_TOOL_BIN_DIR=/usr/local/bin JAVA_VERSION=21.0.11+10 JAVA_VERSION_FILENAME=21.0.11_10 ANDROID_CMDTOOLS_BUILD=11076708 JAVA_HOME=/usr/local/temurin-21 ANDROID_HOME=/opt/android-sdk ANDROID_SDK_ROOT=/opt/android-sdk |
| ENV PATH=/usr/local/go/bin:/go/bin:/usr/local/cargo/bin:/usr/local/temurin-21/bin:/opt/android-sdk/cmdline-tools/latest/bin:/opt/android-sdk/platform-tools:/lsiopy/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| COPY /uv /uvx /usr/local/bin/ # buildkit |
| RUN |1 TARGETARCH=amd64 /bin/sh -c apt-get update && apt-get install -y --no-install-recommends curl wget git build-essential ca-certificates unzip jq && curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && apt-get install -y --no-install-recommends nodejs && curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --no-modify-path && curl -fsSL "https://go.dev/dl/go${GO_VERSION}.linux-${TARGETARCH}.tar.gz" | tar -xz -C /usr/local && OPENCODE_VERSION="1.17.2" && case "${TARGETARCH}" in amd64) OC_ARCH=x64 ;; arm64) OC_ARCH=arm64 ;; esac && curl -fsSL "https://github.com/anomalyco/opencode/releases/download/v${OPENCODE_VERSION}/opencode-linux-${OC_ARCH}.tar.gz" | tar -xz -C /usr/local/bin opencode && chmod +x /usr/local/bin/opencode && TEA_VERSION="0.14.1" && curl -fsSL "https://gitea.com/gitea/tea/releases/download/v${TEA_VERSION}/tea-${TEA_VERSION}-linux-${TARGETARCH}" -o /usr/local/bin/tea && chmod +x /usr/local/bin/tea && ZK_VERSION="0.15.5" && curl -fsSL "https://github.com/zk-org/zk/releases/download/v${ZK_VERSION}/zk-v${ZK_VERSION}-linux-${TARGETARCH}.tar.gz" | tar -xz -C /usr/local/bin zk && chmod +x /usr/local/bin/zk && LOGCLI_VERSION="3.7.2" && curl -fsSL "https://github.com/grafana/loki/releases/download/v${LOGCLI_VERSION}/logcli-linux-${TARGETARCH}.zip" -o /tmp/logcli.zip && unzip -q /tmp/logcli.zip -d /tmp/logcli-extract && mv /tmp/logcli-extract/logcli-linux-${TARGETARCH} /usr/local/bin/logcli && chmod +x /usr/local/bin/logcli && rm -rf /tmp/logcli.zip /tmp/logcli-extract && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN |1 TARGETARCH=amd64 /bin/sh -c case "${TARGETARCH}" in amd64) JDK_ARCH=x64 ;; arm64) JDK_ARCH=aarch64 ;; *) echo "Unsupported arch for JDK: ${TARGETARCH}"; exit 1 ;; esac && mkdir -p /usr/local/temurin-21 && curl -fsSL "https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.11%2B10/OpenJDK21U-jdk_${JDK_ARCH}_linux_hotspot_${JAVA_VERSION_FILENAME}.tar.gz" | tar -xz --strip-components=1 -C /usr/local/temurin-21 && mkdir -p /opt/android-sdk/cmdline-tools && curl -fsSL "https://dl.google.com/android/repository/commandlinetools-linux-${ANDROID_CMDTOOLS_BUILD}_latest.zip" -o /tmp/android-cmdtools.zip && unzip -q /tmp/android-cmdtools.zip -d /tmp/android-cmdtools-extract && mv /tmp/android-cmdtools-extract/cmdline-tools /opt/android-sdk/cmdline-tools/latest && rm -rf /tmp/android-cmdtools.zip /tmp/android-cmdtools-extract && yes | sdkmanager --licenses && sdkmanager --install "platform-tools" "build-tools;37.0.0" "platforms;android-36" "cmake;3.22.1" # buildkit |
| RUN |1 TARGETARCH=amd64 /bin/sh -c mkdir -p /root/.config/opencode # buildkit |
| COPY deployment/opencode_config.json /root/.config/opencode/opencode.json # buildkit |
| ARG BX_VERSION=1.5.0 |
| RUN |2 TARGETARCH=amd64 BX_VERSION=1.5.0 /bin/sh -c case "${TARGETARCH}" in amd64) BX_ARCH=amd64 ;; arm64) BX_ARCH=arm64 ;; *) echo "Unsupported arch: ${TARGETARCH}"; exit 1 ;; esac && curl -fsSL "https://github.com/brave/brave-search-cli/releases/download/v${BX_VERSION}/bx-${BX_VERSION}-linux-${BX_ARCH}" -o /usr/local/bin/bx && chmod +x /usr/local/bin/bx # buildkit |
| RUN |2 TARGETARCH=amd64 BX_VERSION=1.5.0 /bin/sh -c uv python install 3.13.13 && uv python pin 3.13.13 # buildkit |
| COPY deployment/git-credential-helper.sh /usr/local/bin/git-credential-helper # buildkit |
| RUN |2 TARGETARCH=amd64 BX_VERSION=1.5.0 /bin/sh -c chmod +x /usr/local/bin/git-credential-helper && git config --system credential.helper "/usr/local/bin/git-credential-helper" # buildkit |
| RUN |2 TARGETARCH=amd64 BX_VERSION=1.5.0 /bin/sh -c echo 'export JAVA_HOME="/usr/local/temurin-21"' > /etc/profile.d/devtools.sh && echo 'export ANDROID_HOME="/opt/android-sdk"' >> /etc/profile.d/devtools.sh && echo 'export ANDROID_SDK_ROOT="/opt/android-sdk"' >> /etc/profile.d/devtools.sh && echo 'export PATH="/usr/local/go/bin:/go/bin:/usr/local/cargo/bin:/usr/local/temurin-21/bin:/opt/android-sdk/cmdline-tools/latest/bin:/opt/android-sdk/platform-tools:$PATH"' >> /etc/profile.d/devtools.sh && printf '%s\n' 'JAVA_HOME="/usr/local/temurin-21"' 'ANDROID_HOME="/opt/android-sdk"' 'ANDROID_SDK_ROOT="/opt/android-sdk"' 'PATH="/usr/local/go/bin:/go/bin:/usr/local/cargo/bin:/usr/local/temurin-21/bin:/opt/android-sdk/cmdline-tools/latest/bin:/opt/android-sdk/platform-tools:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"' >> /etc/environment # buildkit |
| WORKDIR /config/workspace |