diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..90e2faf1b --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +Makefile.temp diff --git a/CHANGELOG.md b/CHANGELOG.md index f974020e5..90fb9761b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ * improved `Makefile`s. * fixed `nextcloud` images. * splited `nextcloud` images to `pure` and `patched` (`zipstreamer`) tags. - * added `torrserver` + * added `torrserver` by @Aleks-Z :v: * added `advanced` image of `vcsode server`. original image by [linuxserver/docker-code-server](https://github.com/linuxserver/docker-code-server). * `september` * added [ArekSredzki/electron-release-server](https://github.com/ArekSredzki/electron-release-server/) support. diff --git a/Makefile b/Makefile index 45c727963..61a561e98 100644 --- a/Makefile +++ b/Makefile @@ -168,11 +168,12 @@ ecosystem-images: cd `pwd`/linux/ecosystem/nginx/latest/rtmp-hls && pwd && make cd `pwd`/linux/ecosystem/nginx/latest/quic && pwd && make - cd `pwd`/linux/advanced/vscode-server/latest && pwd && make - cd `pwd`/linux/advanced/vscode-server/devops && pwd && make - - cd `pwd`/linux/advanced/vscode-server/amxx && pwd && make - cd `pwd`/linux/advanced/vscode-server/android && pwd && make - cd `pwd`/linux/advanced/vscode-server/cpp && pwd && make - cd `pwd`/linux/advanced/vscode-server/docker && pwd && make - cd `pwd`/linux/advanced/vscode-server/dotnet && pwd && make + cd `pwd`/linux/advanced/vscode-server/latest && pwd && make build && make deploy + cd `pwd`/linux/advanced/vscode-server/devops && pwd && make build && make deploy + cd `pwd`/linux/advanced/vscode-server/amxx && pwd && make build && make deploy + cd `pwd`/linux/advanced/vscode-server/android && pwd && make build && make deploy + cd `pwd`/linux/advanced/vscode-server/cpp && pwd && make build && make deploy + cd `pwd`/linux/advanced/vscode-server/docker && pwd && make build && make deploy + cd `pwd`/linux/advanced/vscode-server/dotnet-full && pwd && make build && make deploy + cd `pwd`/linux/advanced/vscode-server/dotnet && pwd && make build && make deploy + cd `pwd`/linux/advanced/vscode-server/mono && pwd && make build && make deploy diff --git a/linux/advanced/vscode-server/devops/Dockerfile b/linux/advanced/vscode-server/devops/Dockerfile index 752465649..cd508597a 100644 --- a/linux/advanced/vscode-server/devops/Dockerfile +++ b/linux/advanced/vscode-server/devops/Dockerfile @@ -205,6 +205,31 @@ RUN dotnet help && \ pwsh-preview -v && \ pwsh -v +# install dotnet tools +RUN dotnet tool list -g && \ + dotnet tool install -g dotnet-script && \ + curl -s https://raw.githubusercontent.com/filipw/dotnet-script/master/install/install.sh | bash && \ + dotnet tool list -g && \ + dotnet-script --version + + +################################################################## +# Mono +################################################################## +RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF && \ + echo "deb https://download.mono-project.com/repo/ubuntu stable-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list && \ + echo "deb https://download.mono-project.com/repo/ubuntu nightly-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-nightly.list && \ + echo "deb https://download.mono-project.com/repo/ubuntu preview-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-preview.list && \ + apt-get update && \ + apt-get install -y --allow-unauthenticated \ + mono-complete \ + mono-llvm-support \ + mono-devel \ + mono-dbg \ + referenceassemblies-pcl \ + ca-certificates-mono \ + mono-xsp4 + ################################################################## # AMXXModX setup ################################################################## diff --git a/linux/advanced/vscode-server/dotnet-full/Dockerfile b/linux/advanced/vscode-server/dotnet-full/Dockerfile new file mode 100644 index 000000000..8f108a4cf --- /dev/null +++ b/linux/advanced/vscode-server/dotnet-full/Dockerfile @@ -0,0 +1,110 @@ +################################################################################ +# https://github.com/linuxserver/docker-code-server/pkgs/container/code-server +################################################################################ +FROM epicmorg/vscode-server:latest + +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## +ENV BuildDocker true + +################################################################## +# dotnet+powershell setup +################################################################## +# Opt out of the telemetry feature +ENV DOTNET_CLI_TELEMETRY_OPTOUT=true +# Disable first time experience +ENV DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true +# Configure Kestrel web server to bind to port 80 when present +ENV ASPNETCORE_URLS=\ +# Enable detection of running in a container +ENV DOTNET_RUNNING_IN_CONTAINER=true +# Enable correct mode for dotnet watch (only mode supported in a container) +ENV DOTNET_USE_POLLING_FILE_WATCHER=true +# Skip extraction of XML docs - generally not useful within an image/container - helps perfomance +ENV NUGET_XMLDOC_MODE=skip +# unofficial support of openssl1.1 instead of 1.0 [https://stackoverflow.com/questions/51901359] +ENV CLR_OPENSSL_VERSION_OVERRIDE=45 +# PowerShell telemetry for docker image usage +ENV POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Ubuntu-20.04 + +#Install packages +RUN curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - && \ + echo 'deb [arch=amd64,arm64,armhf] https://packages.microsoft.com/ubuntu/20.04/prod focal main' > /etc/apt/sources.list.d/microsoft.dotnet.list && \ + apt-get update && \ + apt-get install -y --no-install-recommends --allow-unauthenticated \ + dotnet-sdk-2.1 \ + dotnet-runtime-deps-2.1 \ + dotnet-runtime-2.1 \ + dotnet-hostfxr-2.1 \ + dotnet-sdk-3.1 \ + dotnet-targeting-pack-3.1 \ + dotnet-runtime-deps-3.1 \ + dotnet-runtime-3.1 \ + dotnet-hostfxr-3.1 \ + dotnet-apphost-pack-3.1 \ + dotnet-sdk-5.0 \ + dotnet-targeting-pack-5.0 \ + dotnet-runtime-deps-5.0 \ + dotnet-runtime-5.0 \ + dotnet-hostfxr-5.0 \ + dotnet-apphost-pack-5.0 \ + dotnet-sdk-6.0 \ + dotnet-targeting-pack-6.0 \ + dotnet-runtime-deps-6.0 \ + dotnet-runtime-6.0 \ + dotnet-hostfxr-6.0 \ + dotnet-apphost-pack-6.0 \ + dotnet-host \ + procdump \ + procmon \ + powershell-preview \ + powershell + +# Trigger .NET CLI first run experience by running arbitrary cmd to populate local package cache +RUN dotnet help && \ + pwsh-preview -v && \ + pwsh -v + +# install dotnet tools +RUN dotnet tool list -g && \ + dotnet tool install -g dotnet-script && \ + curl -s https://raw.githubusercontent.com/filipw/dotnet-script/master/install/install.sh | bash && \ + dotnet tool list -g && \ + dotnet-script --version + +################################################################## +# Mono +################################################################## +RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF && \ + echo "deb https://download.mono-project.com/repo/ubuntu stable-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list && \ + echo "deb https://download.mono-project.com/repo/ubuntu nightly-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-nightly.list && \ + echo "deb https://download.mono-project.com/repo/ubuntu preview-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-preview.list && \ + apt-get update && \ + apt-get install -y --allow-unauthenticated \ + mono-complete \ + mono-llvm-support \ + mono-devel \ + mono-dbg \ + referenceassemblies-pcl \ + ca-certificates-mono \ + mono-xsp4 + +################################################################## +# cleaninig up +################################################################## +RUN apt purge policykit-1 -y && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /tmp/mc.patch && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/7z && \ + rm -rfv /tmp/deb/* && \ + rm -rfv /tmp/composer-setup.php && \ + rm -rfv /tmp/amxx_base_latest.tar.gz && \ + rm -rfv /tmp/atlassian-plugin-sdk.deb && \ + rm -rfv /tmp/addons diff --git a/linux/advanced/vscode-server/dotnet-full/Makefile b/linux/advanced/vscode-server/dotnet-full/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/advanced/vscode-server/dotnet-full/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/advanced/vscode-server/dotnet-full/docker-compose.yml b/linux/advanced/vscode-server/dotnet-full/docker-compose.yml new file mode 100644 index 000000000..4ae616091 --- /dev/null +++ b/linux/advanced/vscode-server/dotnet-full/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/vscode-server:dotnet-full" + build: + context: . diff --git a/linux/advanced/vscode-server/dotnet/Dockerfile b/linux/advanced/vscode-server/dotnet/Dockerfile index 51639c1ec..085a716f6 100644 --- a/linux/advanced/vscode-server/dotnet/Dockerfile +++ b/linux/advanced/vscode-server/dotnet/Dockerfile @@ -69,6 +69,13 @@ RUN dotnet help && \ pwsh-preview -v && \ pwsh -v +# install dotnet tools +RUN dotnet tool list -g && \ + dotnet tool install -g dotnet-script && \ + curl -s https://raw.githubusercontent.com/filipw/dotnet-script/master/install/install.sh | bash && \ + dotnet tool list -g && \ + dotnet-script --version + ################################################################## # cleaninig up ################################################################## diff --git a/linux/advanced/vscode-server/mono/Dockerfile b/linux/advanced/vscode-server/mono/Dockerfile new file mode 100644 index 000000000..a7ba91d0f --- /dev/null +++ b/linux/advanced/vscode-server/mono/Dockerfile @@ -0,0 +1,45 @@ +################################################################################ +# https://github.com/linuxserver/docker-code-server/pkgs/container/code-server +################################################################################ +FROM epicmorg/vscode-server:latest + +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## +ENV BuildDocker true + +################################################################## +# Mono +################################################################## +RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF && \ + echo "deb https://download.mono-project.com/repo/ubuntu stable-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list && \ + echo "deb https://download.mono-project.com/repo/ubuntu nightly-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-nightly.list && \ + echo "deb https://download.mono-project.com/repo/ubuntu preview-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-preview.list && \ + apt-get update && \ + apt-get install -y --allow-unauthenticated \ + mono-complete \ + mono-llvm-support \ + mono-devel \ + mono-dbg \ + referenceassemblies-pcl \ + ca-certificates-mono \ + mono-xsp4 + +################################################################## +# cleaninig up +################################################################## +RUN apt purge policykit-1 -y && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /tmp/mc.patch && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/7z && \ + rm -rfv /tmp/deb/* && \ + rm -rfv /tmp/composer-setup.php && \ + rm -rfv /tmp/amxx_base_latest.tar.gz && \ + rm -rfv /tmp/atlassian-plugin-sdk.deb && \ + rm -rfv /tmp/addons diff --git a/linux/advanced/vscode-server/mono/Makefile b/linux/advanced/vscode-server/mono/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/advanced/vscode-server/mono/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/advanced/vscode-server/mono/docker-compose.yml b/linux/advanced/vscode-server/mono/docker-compose.yml new file mode 100644 index 000000000..f3ee406a4 --- /dev/null +++ b/linux/advanced/vscode-server/mono/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/vscode-server:mono" + build: + context: .