Block a user
silverdock (a80df9800310ae573b00ad5d224072f04f77a3b7)
Published 2026-02-17 02:43:41 +00:00 by SilverLABS
Installation
docker pull git.silverlabs.uk/silverlabs/silverdock:a80df9800310ae573b00ad5d224072f04f77a3b7sha256:b62a3a839e15c5b4d129d0fa19f3e3072599da1dc34a0f0ccd00a3e4faee5a6e
Image Layers
| # debian.sh --arch 'amd64' out/ 'bookworm' '@1769990400' |
| ENV APP_UID=1654 ASPNETCORE_HTTP_PORTS=8080 DOTNET_RUNNING_IN_CONTAINER=true |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends ca-certificates libc6 libgcc-s1 libicu72 libssl3 libstdc++6 tzdata && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN /bin/sh -c groupadd --gid=$APP_UID app && useradd --no-log-init --uid=$APP_UID --gid=$APP_UID --create-home app # buildkit |
| ENV DOTNET_VERSION=9.0.13 |
| COPY /dotnet /usr/share/dotnet # buildkit |
| RUN /bin/sh -c ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet # buildkit |
| ENV ASPNET_VERSION=9.0.13 |
| COPY /dotnet /usr/share/dotnet # buildkit |
| ENV DOTNET_GENERATE_ASPNET_CERTIFICATE=false DOTNET_NOLOGO=true DOTNET_SDK_VERSION=9.0.311 DOTNET_USE_POLLING_FILE_WATCHER=true NUGET_XMLDOC_MODE=skip POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Debian-12 |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends curl git libatomic1 wget && rm -rf /var/lib/apt/lists/* # buildkit |
| COPY /dotnet /usr/share/dotnet # buildkit |
| RUN /bin/sh -c dotnet help # buildkit |
| RUN /bin/sh -c powershell_version=7.5.4 && curl --fail --show-error --location --output PowerShell.Linux.x64.$powershell_version.nupkg https://powershellinfraartifacts-gkhedzdeaghdezhr.z01.azurefd.net/tool/$powershell_version/PowerShell.Linux.x64.$powershell_version.nupkg && powershell_sha512='00822aa06b46c3e614bb3479218c25282552922eb5164509d722e26a8e4cef477acc54b846ce486a9d8d87d0cb511b4196703ae76ec5786aa15e098597141b54' && echo "$powershell_sha512 PowerShell.Linux.x64.$powershell_version.nupkg" | sha512sum -c - && mkdir --parents /usr/share/powershell && dotnet tool install --add-source / --tool-path /usr/share/powershell --version $powershell_version PowerShell.Linux.x64 && dotnet nuget locals all --clear && rm PowerShell.Linux.x64.$powershell_version.nupkg && ln -s /usr/share/powershell/pwsh /usr/bin/pwsh && chmod 755 /usr/share/powershell/pwsh && find /usr/share/powershell -print | grep -i '.*[.]nupkg$' | xargs rm # buildkit |
| WORKDIR /app |
| RUN /bin/sh -c for i in 1 2 3 4 5; do apt-get update && apt-get install -y --no-install-recommends git nginx procps openssh-server docker.io tmux sudo curl ca-certificates gnupg locales ncurses-base && rm -rf /var/lib/apt/lists/* && break || (echo "Retry $i failed, sleeping..." && sleep 5); done # buildkit |
| RUN /bin/sh -c sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen # buildkit |
| RUN /bin/sh -c curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && apt-get install -y nodejs && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN /bin/sh -c ARCH=$(dpkg --print-architecture) && if [ "$ARCH" = "amd64" ]; then GITEA_MCP_URL="https://gitea.com/gitea/gitea-mcp/releases/download/v0.7.0/gitea-mcp_Linux_x86_64.tar.gz"; elif [ "$ARCH" = "arm64" ]; then GITEA_MCP_URL="https://gitea.com/gitea/gitea-mcp/releases/download/v0.7.0/gitea-mcp_Linux_arm64.tar.gz"; else echo "Unsupported architecture: $ARCH" && exit 1; fi && curl -fsSL "$GITEA_MCP_URL" -o /tmp/gitea-mcp.tar.gz && tar -xzf /tmp/gitea-mcp.tar.gz -C /tmp && mv /tmp/gitea-mcp /usr/local/bin/gitea-mcp && chmod +x /usr/local/bin/gitea-mcp && rm -rf /tmp/gitea-mcp* # buildkit |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends python3 python3-pip python3-venv && rm -rf /var/lib/apt/lists/* && pip3 install --break-system-packages uv # buildkit |
| RUN /bin/sh -c mkdir -p /var/run/sshd && sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config && sed -i 's/#PubkeyAuthentication yes/PubkeyAuthentication yes/' /etc/ssh/sshd_config && sed -i 's/#PasswordAuthentication yes/PasswordAuthentication yes/' /etc/ssh/sshd_config && ssh-keygen -A # buildkit |
| RUN /bin/sh -c useradd -m -s /bin/bash -G sudo sysadmin && echo "sysadmin ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/sysadmin && chmod 440 /etc/sudoers.d/sysadmin # buildkit |
| RUN /bin/sh -c mkdir -p /app/keys /app/source /app/keys/ssh && touch /app/keys/ssh/authorized_keys && chmod 600 /app/keys/ssh/authorized_keys && mkdir -p /home/sysadmin/.ssh && chown -R sysadmin:sysadmin /home/sysadmin/.ssh && chmod 700 /home/sysadmin/.ssh # buildkit |
| EXPOSE map[22/tcp:{} 8080/tcp:{}] |
| WORKDIR /app |
| COPY /app/publish . # buildkit |
| COPY SilverDOCK/nginx/nginx.conf.default /etc/nginx/nginx.conf # buildkit |
| COPY SilverDOCK/nginx/nginx.conf.template /etc/nginx/nginx.conf.template # buildkit |
| COPY SilverDOCK/tmux.conf /etc/tmux.conf # buildkit |
| COPY SilverDOCK/entrypoint.sh /entrypoint.sh # buildkit |
| RUN /bin/sh -c chmod +x /entrypoint.sh # buildkit |
| ENV REPOSITORY_URL=https://git.silverlabs.uk |
| ENV ASPNETCORE_URLS=http://+:8081 |
| ENV SILVERDOCK_UI_HOSTNAME=silverdock.local |
| ENV SSH_PORT=22 |
| ENV LANG=en_US.UTF-8 |
| ENV LC_ALL=en_US.UTF-8 |
| ENV LANGUAGE=en_US.UTF-8 |
| ENTRYPOINT ["/entrypoint.sh"] |
Details
2026-02-17 02:43:41 +00:00
Versions (82)
View all
Container
0
OCI / Docker
linux/amd64
532 MiB
latest
2026-03-14
dfe2d737a660e922b51bc1640aab82ce8cee47e9
2026-03-14
0833512305f9794010849c62eaeec7a69dd7d416
2026-02-24
bcfd59a19b0394972ee424f616e2b8f881674b4f
2026-02-24
750033be116541a6564b198ac3193cf7f4a029b0
2026-02-20