From 8212510a9cf348b0831a94e1188382a9ea0d32a7 Mon Sep 17 00:00:00 2001 From: glennc Date: Tue, 1 Dec 2015 11:47:22 -0800 Subject: [PATCH] Add an rc1-update1 image. --- 1.0.0-rc1-update1-coreclr/Dockerfile | 32 ++++++++++++++++++++ 1.0.0-rc1-update1/Dockerfile | 35 ++++++++++++++++++++++ 1.0.0-rc1-update1/README.md | 44 ++++++++++++++++++++++++++++ README.md | 2 +- 4 files changed, 112 insertions(+), 1 deletion(-) create mode 100644 1.0.0-rc1-update1-coreclr/Dockerfile create mode 100644 1.0.0-rc1-update1/Dockerfile create mode 100644 1.0.0-rc1-update1/README.md diff --git a/1.0.0-rc1-update1-coreclr/Dockerfile b/1.0.0-rc1-update1-coreclr/Dockerfile new file mode 100644 index 00000000..cd981049 --- /dev/null +++ b/1.0.0-rc1-update1-coreclr/Dockerfile @@ -0,0 +1,32 @@ +FROM debian:jessie + +ENV DNX_VERSION 1.0.0-rc1-update1 +ENV DNX_USER_HOME /opt/DNX_BRANCH +#Currently the CLR packages don't have runtime ids to handle debian:jessie but +#we are making sure that the dependencies are the right versions and are opting for +#the smaller base image. So we use this variable to overwrite the default detection. +ENV DNX_RUNTIME_ID ubuntu.14.04-x64 + +RUN apt-get -qq update && apt-get -qqy install unzip curl libicu-dev libunwind8 gettext libssl-dev libcurl3-gnutls zlib1g && rm -rf /var/lib/apt/lists/* + +RUN curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_USER_HOME=$DNX_USER_HOME DNX_BRANCH=v$DNX_VERSION sh +RUN bash -c "source $DNX_USER_HOME/dnvm/dnvm.sh \ + && dnvm install $DNX_VERSION -alias default -r coreclr \ + && dnvm alias default | xargs -i ln -s $DNX_USER_HOME/runtimes/{} $DNX_USER_HOME/runtimes/default" + +# Install libuv for Kestrel from source code (binary is not in wheezy and one in jessie is still too old) +# Combining this with the uninstall and purge will save us the space of the build tools in the image +RUN LIBUV_VERSION=1.4.2 \ + && apt-get -qq update \ + && apt-get -qqy install autoconf automake build-essential libtool \ + && curl -sSL https://github.com/libuv/libuv/archive/v${LIBUV_VERSION}.tar.gz | tar zxfv - -C /usr/local/src \ + && cd /usr/local/src/libuv-$LIBUV_VERSION \ + && sh autogen.sh && ./configure && make && make install \ + && rm -rf /usr/local/src/libuv-$LIBUV_VERSION \ + && ldconfig \ + && apt-get -y purge autoconf automake build-essential libtool \ + && apt-get -y autoremove \ + && apt-get -y clean \ + && rm -rf /var/lib/apt/lists/* + +ENV PATH $PATH:$DNX_USER_HOME/runtimes/default/bin diff --git a/1.0.0-rc1-update1/Dockerfile b/1.0.0-rc1-update1/Dockerfile new file mode 100644 index 00000000..d79980ba --- /dev/null +++ b/1.0.0-rc1-update1/Dockerfile @@ -0,0 +1,35 @@ +FROM mono:4.0.1 + +ENV DNX_VERSION 1.0.0-rc1-update1 +ENV DNX_USER_HOME /opt/dnx +#Currently the CLR packages don't have runtime ids to handle debian:jessie but +#we are making sure that the dependencies are the right versions and are opting for +#the smaller base image. So we use this variable to overwrite the default detection. +ENV DNX_RUNTIME_ID ubuntu.14.04-x64 + +RUN apt-get -qq update && apt-get -qqy install unzip libc6-dev libicu-dev && rm -rf /var/lib/apt/lists/* + +RUN curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_USER_HOME=$DNX_USER_HOME DNX_BRANCH=v$DNX_VERSION sh +RUN bash -c "source $DNX_USER_HOME/dnvm/dnvm.sh \ + && dnvm install $DNX_VERSION -alias default \ + && dnvm alias default | xargs -i ln -s $DNX_USER_HOME/runtimes/{} $DNX_USER_HOME/runtimes/default" + +# Install libuv for Kestrel from source code (binary is not in wheezy and one in jessie is still too old) +# Combining this with the uninstall and purge will save us the space of the build tools in the image +RUN LIBUV_VERSION=1.4.2 \ + && apt-get -qq update \ + && apt-get -qqy install autoconf automake build-essential libtool \ + && curl -sSL https://github.com/libuv/libuv/archive/v${LIBUV_VERSION}.tar.gz | tar zxfv - -C /usr/local/src \ + && cd /usr/local/src/libuv-$LIBUV_VERSION \ + && sh autogen.sh && ./configure && make && make install \ + && rm -rf /usr/local/src/libuv-$LIBUV_VERSION \ + && ldconfig \ + && apt-get -y purge autoconf automake build-essential libtool \ + && apt-get -y autoremove \ + && apt-get -y clean \ + && rm -rf /var/lib/apt/lists/* + +ENV PATH $PATH:$DNX_USER_HOME/runtimes/default/bin + +# Prevent `dnu restore` from stalling (gh#63, gh#80) +ENV MONO_THREADS_PER_CPU 50 diff --git a/1.0.0-rc1-update1/README.md b/1.0.0-rc1-update1/README.md new file mode 100644 index 00000000..15949e55 --- /dev/null +++ b/1.0.0-rc1-update1/README.md @@ -0,0 +1,44 @@ +![](https://avatars3.githubusercontent.com/u/6476660?v=3&s=200) + +ASP.NET 5 Preview Docker Image +==================== + +This repository contains `Dockerfile` definitions for [ASP.NET 5][home] Docker images. + +This project is part of ASP.NET 5. You can find samples, documentation, and getting started instructions for ASP.NET 5 at the [Home][home] repo. + +[![Build Status of Docker Image on Circle CI](https://img.shields.io/circleci/project/aspnet/aspnet-docker.svg)](https://circleci.com/gh/aspnet/aspnet-docker/tree/master) +[![Downloads from Docker Hub](https://img.shields.io/docker/pulls/microsoft/aspnet.svg)](https://registry.hub.docker.com/u/microsoft/aspnet) +[![Stars on Docker Hub](https://img.shields.io/docker/stars/microsoft/aspnet.svg)](https://registry.hub.docker.com/u/microsoft/aspnet) + +## Supported tags + +#### `coreclr`-based images + +* [`1.0.0-rc1-update1-coreclr` _(1.0.0-rc1-update1-coreclr/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-rc1-update1-coreclr/Dockerfile) +* [`1.0.0-rc1-final-coreclr` _(1.0.0-rc1-final-coreclr/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-rc1-final-coreclr/Dockerfile) +* [`1.0.0-beta8-coreclr` _(1.0.0-beta8-coreclr/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-beta8-coreclr/Dockerfile) +* [`1.0.0-beta7-coreclr` _(1.0.0-beta7-coreclr/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-beta7-coreclr/Dockerfile) + +#### `mono`-based images + +* [`1.0.0-rc1-update1`, `latest` _(1.0.0-rc1-update1/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-rc1-update1/Dockerfile) +* [`1.0.0-rc1-final`, _(1.0.0-rc1-final/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-rc1-final/Dockerfile) +* [`1.0.0-beta8`, _(1.0.0-beta8/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-beta8/Dockerfile) +* [`1.0.0-beta7`, _(1.0.0-beta7/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-beta7/Dockerfile) +* [`1.0.0-beta6`, _(1.0.0-beta6/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-beta6/Dockerfile) +* [`1.0.0-beta5`, _(1.0.0-beta5/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-beta5/Dockerfile) + +## How to use this image + +Please [read this article][webdev-article] on .NET Web Development and Tools Blog to learn more about using this image. + +This image provides the following environment variables: + +* `DNX_USER_HOME`: path to DNX installation (e.g. /opt/dnx) +* `DNX_VERSION`: version of DNX (.NET Execution Environment) installed + +In addition to these, `PATH` is set to include the `dnx`/`dnu` executables. + +[home]: https://github.com/aspnet/home +[webdev-article]: http://blogs.msdn.com/b/webdev/archive/2015/01/14/running-asp-net-5-applications-in-linux-containers-with-docker.aspx diff --git a/README.md b/README.md index 92b2e051..6bab1b08 120000 --- a/README.md +++ b/README.md @@ -1 +1 @@ -1.0.0-rc1-final/README.md \ No newline at end of file +1.0.0-rc1-update1/README.md \ No newline at end of file