diff --git a/Dockerfile b/Dockerfile index 28e64a7..534adaa 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ghcr.io/linuxserver/baseimage-alpine:3.13 as buildstage +FROM ghcr.io/linuxserver/baseimage-alpine:3.15 as buildstage ARG DOTNET_VERSIONS @@ -16,20 +16,20 @@ RUN \ for i in $DOTNET_VERSIONS; do \ echo "processing version ${i}" && \ DOTNET_RELEASE_URL=$(echo "${DOTNET_JSON}" | jq -r ".\"releases-index\"[] | select(.\"latest-sdk\"==\"${i}\") | .\"releases.json\"") && \ - DOTNET_RELEASE_JSON=$(curl -sX GET "${DOTNET_RELEASE_URL}") && \ + DOTNET_RELEASE_JSON=$(curl -fSsLX GET "${DOTNET_RELEASE_URL}") && \ AMD64_URL=$(echo "${DOTNET_RELEASE_JSON}" | jq -r ".releases[] | select(.sdk.version==\"${i}\") | .sdk.files[] | select(.name | contains(\"linux-x64.tar.gz\")) | .url") && \ ARM32_URL=$(echo "${DOTNET_RELEASE_JSON}" | jq -r ".releases[] | select(.sdk.version==\"${i}\") | .sdk.files[] | select(.name | contains(\"linux-arm.tar.gz\")) | .url") && \ ARM64_URL=$(echo "${DOTNET_RELEASE_JSON}" | jq -r ".releases[] | select(.sdk.version==\"${i}\") | .sdk.files[] | select(.name | contains(\"linux-arm64.tar.gz\")) | .url") && \ - curl -fS --retry 3 --retry-connrefused -o \ + curl -fSL --retry 3 --retry-connrefused -o \ /root-layer/dotnet/dotnetsdk_"${i}"_x86_64.tar.gz -L \ "${AMD64_URL}" && \ - curl -fS --retry 3 --retry-connrefused -o \ + curl -fSL --retry 3 --retry-connrefused -o \ /root-layer/dotnet/dotnetsdk_"${i}"_armv7l.tar.gz -L \ "${ARM32_URL}" && \ - curl -fS --retry 3 --retry-connrefused -o \ + curl -fSL --retry 3 --retry-connrefused -o \ /root-layer/dotnet/dotnetsdk_"${i}"_aarch64.tar.gz -L \ - "${ARM64_URL}"; \ -done + "${ARM64_URL}" || exit 1; \ + done COPY root/ /root-layer/ diff --git a/README.md b/README.md index 6453b27..dff0d84 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ -# .NET Core SDK - Docker mod for code server +# .NET Core SDK - Docker mod for code-server/openvscode-server -This mod adds .NET CORE SDK to code server. +This mod adds .NET CORE SDK to code-server and openvscode-server. -In code server docker arguments, set an environment variable `DOCKER_MODS=linuxserver/mods:code-server-dotnet` +In code-server/openvscode-server docker arguments, set an environment variable `DOCKER_MODS=linuxserver/mods:code-server-dotnet` If adding multiple mods, enter them in an array separated by `|`, such as `DOCKER_MODS=linuxserver/mods:code-server-dotnet|linuxserver/mods:code-server-mod2` diff --git a/root/etc/cont-init.d/95-apt-get b/root/etc/cont-init.d/95-apt-get new file mode 100644 index 0000000..5b1a21c --- /dev/null +++ b/root/etc/cont-init.d/95-apt-get @@ -0,0 +1,3 @@ +#!/usr/bin/with-contenv bash + +apt-get update diff --git a/root/etc/cont-init.d/98-dotnet b/root/etc/cont-init.d/98-dotnet index a7d1b2e..d13ee84 100644 --- a/root/etc/cont-init.d/98-dotnet +++ b/root/etc/cont-init.d/98-dotnet @@ -2,6 +2,8 @@ # Determine if setup is needed if [ -d /dotnet ]; then + # install deps + apt-get install -y libicu66 # remove existing install if updating if ls -d /dotnet_* >/dev/null 2>&1; then echo "deleting" $(ls -d /dotnet_*)