mirror of
https://github.com/EpicMorg/docker-scripts.git
synced 2024-12-25 06:05:37 +03:00
win32 update
This commit is contained in:
parent
02cd8a4dd7
commit
12c1d07434
@ -1,4 +0,0 @@
|
|||||||
![Windows-ready Docker Image](https://avatars2.githubusercontent.com/u/6154722?v=3&s=200)
|
|
||||||
# Windows-ready Docker Image
|
|
||||||
|
|
||||||
* based on https://hub.docker.com/_/microsoft-windows
|
|
@ -1,64 +1,115 @@
|
|||||||
FROM mcr.microsoft.com/windows/servercore:1809-amd64
|
FROM mcr.microsoft.com/windows/servercore:ltsc2022
|
||||||
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
|
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
|
||||||
|
|
||||||
ENV chocolateyUseWindowsCompression false
|
|
||||||
|
|
||||||
####################################################################################################################################
|
####################################################################################################################################
|
||||||
# https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-docker/manage-windows-dockerfile
|
# https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-docker/manage-windows-dockerfile
|
||||||
####################################################################################################################################
|
####################################################################################################################################
|
||||||
|
|
||||||
|
ENV chocolateyUseWindowsCompression false
|
||||||
|
# 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
|
||||||
|
# PowerShell telemetry for docker image usage
|
||||||
|
ENV POWERSHELL_DISTRIBUTION_CHANNEL=docker-windows
|
||||||
|
# Enable detection of running in a container
|
||||||
|
ENV DOTNET_RUNNING_IN_CONTAINER=true
|
||||||
|
ENV COMPLUS_RUNNING_IN_CONTAINER=1
|
||||||
|
ENV COMPLUS_NGenProtectedProcess_FeatureEnabled=0
|
||||||
|
|
||||||
|
##################################################################
|
||||||
|
|
||||||
|
ENV EMG_WORKDIR=C:\\EpicMorg
|
||||||
|
ENV EMG_VOLDIR=C:\\EpicMorg\\mount
|
||||||
|
|
||||||
##################################################################
|
##################################################################
|
||||||
# Creating workdir for future
|
# Creating workdir for future
|
||||||
##################################################################
|
##################################################################
|
||||||
RUN mkdir C:\\EpicMorg
|
RUN mkdir C:\\EpicMorg
|
||||||
WORKDIR C:\\EpicMorg
|
WORKDIR C:\\EpicMorg
|
||||||
|
VOLUME C:\\EpicMorg\\mount
|
||||||
##################################################################
|
|
||||||
# Installing IIS
|
|
||||||
##################################################################
|
|
||||||
RUN powershell -Command Add-WindowsFeature Web-Server; \
|
|
||||||
Invoke-WebRequest -UseBasicParsing -Uri "https://dotnetbinaries.blob.core.windows.net/servicemonitor/2.0.1.10/ServiceMonitor.exe" -OutFile "C:\ServiceMonitor.exe"
|
|
||||||
|
|
||||||
##################################################################
|
##################################################################
|
||||||
# Installing ocolatey.org
|
# Installing ocolatey.org
|
||||||
##################################################################
|
##################################################################
|
||||||
RUN powershell -Command \
|
RUN powershell -Command \
|
||||||
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; \
|
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
|
||||||
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
|
|
||||||
|
# set mirror of chocolatey to bypass ratelimits
|
||||||
|
RUN choco source disable -n=chocolatey
|
||||||
|
RUN choco source add -n=vault -s="https://repo.vault.center/artifactory/api/nuget/chocolatey"
|
||||||
|
RUN choco source
|
||||||
|
|
||||||
##################################################################
|
##################################################################
|
||||||
# install vcredist packages
|
# install vcredist packages
|
||||||
##################################################################
|
##################################################################
|
||||||
RUN cinst --no-progress -y -IgnoreChecksums --ignoredetectedreboot \
|
RUN cinst -y --force --ignore-checksums --allow-empty-checksums --ignoredetectedreboot \
|
||||||
vcredist-all \
|
# vb5runtime \
|
||||||
vcredist140 \
|
vjredist \
|
||||||
|
visualfsharptools \
|
||||||
vcredist2005 \
|
vcredist2005 \
|
||||||
vcredist2008 \
|
vcredist2008 \
|
||||||
vcredist2010 \
|
vcredist2010 \
|
||||||
vcredist2012 \
|
vcredist2012 \
|
||||||
vcredist2013 \
|
vcredist2013 \
|
||||||
vcredist2013 \
|
vcredist2013 \
|
||||||
vcredist2015
|
vcredist2015 \
|
||||||
|
vcredist2017 \
|
||||||
|
vcredist-all \
|
||||||
|
vcredist140
|
||||||
|
|
||||||
##################################################################
|
##################################################################
|
||||||
# install dotnet packages
|
# install dotnet packages
|
||||||
##################################################################
|
##################################################################
|
||||||
RUN cinst --no-progress -y -IgnoreChecksums --ignoredetectedreboot \
|
RUN cinst -y --force --ignore-checksums --allow-empty-checksums --ignoredetectedreboot \
|
||||||
|
dotnet1.1 \
|
||||||
|
dotnetsdk1.1 \
|
||||||
|
dotnet3.5 \
|
||||||
|
dotnetfx \
|
||||||
|
netfx-4.8-devpack \
|
||||||
dotnet \
|
dotnet \
|
||||||
dotnet-aspnetruntime \
|
dotnet-aspnetruntime \
|
||||||
dotnet-windowshosting \
|
dotnet-windowshosting \
|
||||||
dotnet-runtime \
|
dotnet-runtime \
|
||||||
|
dotnet-desktopruntime \
|
||||||
dotnet-sdk \
|
dotnet-sdk \
|
||||||
powershell-core
|
powershell-core
|
||||||
|
|
||||||
|
# Apply patch to provide support for container limits
|
||||||
|
RUN curl -fSLo patch.msu https://download.microsoft.com/download/1/d/1/1d162522-821a-41c6-ba7d-74ff37b0e6c6/Windows10.0-KB9008395-x64-NDP48.msu && \
|
||||||
|
mkdir patch&& \
|
||||||
|
&& expand patch.msu patch -F:* && \
|
||||||
|
&& del /F /Q patch.msu && \
|
||||||
|
&& dism /Online /Quiet /Add-Package /PackagePath:C:\patch\windows10.0-kb9008395-x64-ndp48.cab && \
|
||||||
|
&& rmdir /S /Q patch && \
|
||||||
|
# Ngen top of assembly graph to optimize a set of frequently used assemblies
|
||||||
|
&& %windir%\Microsoft.NET\Framework64\v4.0.30319\ngen install "Microsoft.PowerShell.Utility.Activities, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" && \
|
||||||
|
&& %windir%\Microsoft.NET\Framework64\v4.0.30319\ngen update && \
|
||||||
|
&& %windir%\Microsoft.NET\Framework\v4.0.30319\ngen update
|
||||||
|
|
||||||
|
# To optimize 32-bit assemblies, uncomment the next line
|
||||||
|
# && %windir%\Microsoft.NET\Framework\v4.0.30319\ngen install "Microsoft.PowerShell.Utility.Activities, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" && \
|
||||||
|
|
||||||
##################################################################
|
##################################################################
|
||||||
# install base packages
|
# install base packages
|
||||||
##################################################################
|
##################################################################
|
||||||
RUN cinst --no-progress -y -IgnoreChecksums --ignoredetectedreboot \
|
RUN cinst -y --force --ignore-checksums --allow-empty-checksums --ignoredetectedreboot \
|
||||||
|
psexec \
|
||||||
curl \
|
curl \
|
||||||
far \
|
far \
|
||||||
findutils \
|
findutils \
|
||||||
git \
|
git \
|
||||||
|
git.install \
|
||||||
|
git-lfs \
|
||||||
|
git-lfs.install \
|
||||||
make \
|
make \
|
||||||
mc \
|
mc \
|
||||||
nano \
|
nano \
|
||||||
@ -74,7 +125,7 @@ RUN cinst --no-progress -y -IgnoreChecksums --ignoredetectedreboot \
|
|||||||
##################################################################
|
##################################################################
|
||||||
# install archive packages
|
# install archive packages
|
||||||
##################################################################
|
##################################################################
|
||||||
RUN cinst --no-progress -y -IgnoreChecksums --ignoredetectedreboot \
|
RUN cinst -y --force --ignore-checksums --allow-empty-checksums --ignoredetectedreboot \
|
||||||
7zip \
|
7zip \
|
||||||
7zip-zstd \
|
7zip-zstd \
|
||||||
7zip.commandline \
|
7zip.commandline \
|
||||||
@ -88,6 +139,3 @@ RUN cinst --no-progress -y -IgnoreChecksums --ignoredetectedreboot \
|
|||||||
wavpack7z \
|
wavpack7z \
|
||||||
winrar
|
winrar
|
||||||
|
|
||||||
EXPOSE 80
|
|
||||||
|
|
||||||
ENTRYPOINT ["C:\\ServiceMonitor.exe", "w3svc"]
|
|
@ -1,6 +1,6 @@
|
|||||||
version: '3.9'
|
version: '3.9'
|
||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
image: "epicmorg/prod:win-server-core"
|
image: "epicmorg/windows-server:2022-base"
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
|
@ -1,7 +1,21 @@
|
|||||||
FROM mcr.microsoft.com/windows:1809-amd64
|
FROM mcr.microsoft.com/windows/servercore:ltsc2022
|
||||||
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
|
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
|
||||||
|
|
||||||
ENV chocolateyUseWindowsCompression false
|
ENV chocolateyUseWindowsCompression false
|
||||||
|
# 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
|
||||||
|
# PowerShell telemetry for docker image usage
|
||||||
|
ENV POWERSHELL_DISTRIBUTION_CHANNEL=docker-windows
|
||||||
|
|
||||||
####################################################################################################################################
|
####################################################################################################################################
|
||||||
# https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-docker/manage-windows-dockerfile
|
# https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-docker/manage-windows-dockerfile
|
||||||
@ -13,6 +27,12 @@ ENV chocolateyUseWindowsCompression false
|
|||||||
RUN mkdir C:\\EpicMorg
|
RUN mkdir C:\\EpicMorg
|
||||||
WORKDIR C:\\EpicMorg
|
WORKDIR C:\\EpicMorg
|
||||||
|
|
||||||
|
##################################################################
|
||||||
|
# Installing IIS
|
||||||
|
##################################################################
|
||||||
|
RUN powershell -Command Add-WindowsFeature Web-Server; \
|
||||||
|
Invoke-WebRequest -UseBasicParsing -Uri "https://dotnetbinaries.blob.core.windows.net/servicemonitor/2.0.1.10/ServiceMonitor.exe" -OutFile "C:\ServiceMonitor.exe"
|
||||||
|
|
||||||
##################################################################
|
##################################################################
|
||||||
# Installing ocolatey.org
|
# Installing ocolatey.org
|
||||||
##################################################################
|
##################################################################
|
||||||
@ -38,8 +58,9 @@ RUN cinst --no-progress -y -IgnoreChecksums --ignoredetectedreboot \
|
|||||||
# install dotnet packages
|
# install dotnet packages
|
||||||
##################################################################
|
##################################################################
|
||||||
RUN cinst --no-progress -y -IgnoreChecksums --ignoredetectedreboot \
|
RUN cinst --no-progress -y -IgnoreChecksums --ignoredetectedreboot \
|
||||||
directx \
|
|
||||||
dotnet \
|
dotnet \
|
||||||
|
dotnet-aspnetruntime \
|
||||||
|
dotnet-windowshosting \
|
||||||
dotnet-runtime \
|
dotnet-runtime \
|
||||||
dotnet-sdk \
|
dotnet-sdk \
|
||||||
powershell-core
|
powershell-core
|
||||||
@ -51,7 +72,6 @@ RUN cinst --no-progress -y -IgnoreChecksums --ignoredetectedreboot \
|
|||||||
curl \
|
curl \
|
||||||
far \
|
far \
|
||||||
findutils \
|
findutils \
|
||||||
ffmpeg-shared \
|
|
||||||
git \
|
git \
|
||||||
make \
|
make \
|
||||||
mc \
|
mc \
|
||||||
@ -81,4 +101,7 @@ RUN cinst --no-progress -y -IgnoreChecksums --ignoredetectedreboot \
|
|||||||
thumbs7z \
|
thumbs7z \
|
||||||
wavpack7z \
|
wavpack7z \
|
||||||
winrar
|
winrar
|
||||||
|
|
||||||
|
EXPOSE 80
|
||||||
|
|
||||||
|
ENTRYPOINT ["C:\\ServiceMonitor.exe", "w3svc"]
|
4
win32/ecosystem/epicmorg/iis/README.md
Normal file
4
win32/ecosystem/epicmorg/iis/README.md
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
![IIS Docker Image](https://avatars2.githubusercontent.com/u/6154722?v=3&s=200)
|
||||||
|
# IIS-ready Docker Image
|
||||||
|
|
||||||
|
* based on https://github.com/microsoft/iis-docker
|
@ -1,6 +1,6 @@
|
|||||||
version: '3.9'
|
version: '3.9'
|
||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
image: "epicmorg/prod:win10"
|
image: "epicmorg/windows-server:base"
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
Loading…
Reference in New Issue
Block a user