From 4d4e86727d3f0bde975449e9893ec95e606dee7a Mon Sep 17 00:00:00 2001 From: Nick Walker Date: Tue, 30 Jan 2018 11:16:19 -0800 Subject: [PATCH] 2.0.5 (#19) --- 2.0.5/Dockerfile | 32 ++++++++++++++++++++++++++++ 2.0.5/bin.zip | Bin 0 -> 43089 bytes 2.0.5/build.sh | 6 ++++++ 2.0.5/hostingstart.html | 38 ++++++++++++++++++++++++++++++++++ 2.0.5/init_container.sh | 36 ++++++++++++++++++++++++++++++++ 2.0.5/src/Program.cs | 19 +++++++++++++++++ 2.0.5/src/Startup.cs | 21 +++++++++++++++++++ 2.0.5/src/hostingstart.csproj | 15 ++++++++++++++ 2.0.5/sshd_config | 15 ++++++++++++++ build.sh | 8 ++++--- 10 files changed, 187 insertions(+), 3 deletions(-) create mode 100644 2.0.5/Dockerfile create mode 100644 2.0.5/bin.zip create mode 100644 2.0.5/build.sh create mode 100644 2.0.5/hostingstart.html create mode 100644 2.0.5/init_container.sh create mode 100644 2.0.5/src/Program.cs create mode 100644 2.0.5/src/Startup.cs create mode 100644 2.0.5/src/hostingstart.csproj create mode 100644 2.0.5/sshd_config diff --git a/2.0.5/Dockerfile b/2.0.5/Dockerfile new file mode 100644 index 0000000..d0b1302 --- /dev/null +++ b/2.0.5/Dockerfile @@ -0,0 +1,32 @@ +FROM microsoft/aspnetcore:2.0.5 +MAINTAINER Azure App Services Container Images + +COPY bin.zip /tmp +COPY init_container.sh /bin/ +COPY hostingstart.html /home/site/wwwroot/ +COPY sshd_config /etc/ssh/ + +RUN apt-get update \ + && apt-get install -y apt-utils --no-install-recommends \ + && apt-get install -y unzip --no-install-recommends \ + && mkdir -p /defaulthome/hostingstart \ + && unzip -q -o /tmp/bin.zip -d /defaulthome/hostingstart \ + && rm /tmp/bin.zip \ + && echo "root:Docker!" | chpasswd \ + && echo "cd /home" >> /etc/bash.bashrc \ + && apt update \ + && apt install -y --no-install-recommends openssh-server vim curl wget tcptraceroute \ + && chmod 755 /bin/init_container.sh \ + && mkdir -p /home/LogFiles/ + +EXPOSE 2222 8080 + +ENV PORT 8080 +ENV WEBSITE_ROLE_INSTANCE_ID localRoleInstance +ENV WEBSITE_INSTANCE_ID localInstance +ENV PATH ${PATH}:/home/site/wwwroot +ENV ASPNETCORE_URLS= + +WORKDIR /home/site/wwwroot + +ENTRYPOINT ["/bin/init_container.sh"] diff --git a/2.0.5/bin.zip b/2.0.5/bin.zip new file mode 100644 index 0000000000000000000000000000000000000000..50d80ec2ea8b5dec8badd2cb23b64bfeb5de236d GIT binary patch literal 43089 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 + + + + + + +Microsoft Azure App Service - Welcome + + + + + + +
+
+hostingstart-v2-02 +
+
+

Your App Service app has been created

+

Go to your app's + +Quick Start guide in the Azure portal to get started or read our + +deployment documentation. +

+
+
+ + + + \ No newline at end of file diff --git a/2.0.5/init_container.sh b/2.0.5/init_container.sh new file mode 100644 index 0000000..f85c71f --- /dev/null +++ b/2.0.5/init_container.sh @@ -0,0 +1,36 @@ +#!/usr/bin/env bash +cat >/etc/motd < + \/ \/ \/ +A P P S E R V I C E O N L I N U X + +Documentation: http://aka.ms/webapp-linux +Dotnet quickstart: https://aka.ms/dotnet-qs + +EOL +cat /etc/motd + +service ssh start + +[ -z "$ASPNETCORE_URLS" ] && export ASPNETCORE_URLS=http://*:"$PORT" + +# If there is any command line argument specified, run it +[ $# -ne 0 ] && exec "$@" + +# Pick up one .csproj file from repository where git push puts files into +CSPROJ=`ls -1 /home/site/repository/*.csproj 2>/dev/null | head -1` + +# Convert /home/site/repository/.csproj into ./.dll and execute it +if [ -n "$CSPROJ" ]; then + DLL=./`basename "$CSPROJ" .csproj`.dll + echo Found: $DLL + [ -e "$DLL" ] && exec dotnet "$DLL" +fi + +echo Could not find .csproj or .dll. Using default. +cd /defaulthome/hostingstart +exec dotnet hostingstart.dll diff --git a/2.0.5/src/Program.cs b/2.0.5/src/Program.cs new file mode 100644 index 0000000..babecdd --- /dev/null +++ b/2.0.5/src/Program.cs @@ -0,0 +1,19 @@ +using System; +using Microsoft.AspNetCore.Hosting; + +namespace hostingstart +{ + public class Program + { + public static void Main(string[] args) + { + var host = new WebHostBuilder() + .UseKestrel() + .UseStartup() + .UseWebRoot("/home/site/wwwroot") + .Build(); + + host.Run(); + } + } +} diff --git a/2.0.5/src/Startup.cs b/2.0.5/src/Startup.cs new file mode 100644 index 0000000..517d61c --- /dev/null +++ b/2.0.5/src/Startup.cs @@ -0,0 +1,21 @@ +using System; +using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Hosting; +using Microsoft.AspNetCore.Http; +using Microsoft.Extensions.FileProviders; +using Microsoft.AspNetCore.StaticFiles; + +namespace hostingstart +{ + public class Startup + { + public void Configure(IApplicationBuilder app) + { + var options = new DefaultFilesOptions(); + options.DefaultFileNames.Add("hostingstart.html"); + + app.UseDefaultFiles(options) + .UseStaticFiles(); + } + } +} diff --git a/2.0.5/src/hostingstart.csproj b/2.0.5/src/hostingstart.csproj new file mode 100644 index 0000000..d58e53a --- /dev/null +++ b/2.0.5/src/hostingstart.csproj @@ -0,0 +1,15 @@ + + + + netcoreapp2.0 + + + + + + + + + + + diff --git a/2.0.5/sshd_config b/2.0.5/sshd_config new file mode 100644 index 0000000..a3690f2 --- /dev/null +++ b/2.0.5/sshd_config @@ -0,0 +1,15 @@ +# This is ssh server systemwide configuration file. +# +# /etc/sshd_config + +Port 2222 +ListenAddress 0.0.0.0 +LoginGraceTime 180 +X11Forwarding yes +Ciphers aes128-cbc,3des-cbc,aes256-cbc +MACs hmac-sha1,hmac-sha1-96 +StrictModes yes +SyslogFacility DAEMON +PasswordAuthentication yes +PermitEmptyPasswords no +PermitRootLogin yes diff --git a/build.sh b/build.sh index 76453ab..15e61d3 100755 --- a/build.sh +++ b/build.sh @@ -1,18 +1,20 @@ !/usr/bin/env bash -set -x -e +set -euo pipefail buildnumber=${4-$(date -u +"%y%m%d%H%M")} docker build -t "$1"/dotnetcore:1.0.5_"$buildnumber" -t "$1"/dotnetcore:lts_"$buildnumber" 1.0.5 docker build -t "$1"/dotnetcore:1.1.2_"$buildnumber" 1.1.2 -docker build -t "$1"/dotnetcore:2.0.0_"$buildnumber" -t "$1"/dotnetcore:latest_"$buildnumber" 2.0.0 +docker build -t "$1"/dotnetcore:2.0.0_"$buildnumber" 2.0.0 +docker build -t "$1"/dotnetcore:2.0.5_"$buildnumber" -t "$1"/dotnetcore:latest_"$buildnumber" 2.0.5 docker login -u "$2" -p "$3" docker push "$1"/dotnetcore:lts_"$buildnumber" docker push "$1"/dotnetcore:1.0.5_"$buildnumber" docker push "$1"/dotnetcore:1.1.2_"$buildnumber" -docker push "$1"/dotnetcore:latest_"$buildnumber" docker push "$1"/dotnetcore:2.0.0_"$buildnumber" +docker push "$1"/dotnetcore:2.0.5_"$buildnumber" +docker push "$1"/dotnetcore:latest_"$buildnumber" docker logout