diff --git a/.ci/build-app-image.sh b/.ci/build-app-image.sh index 12a31f1f..37c761ab 100755 --- a/.ci/build-app-image.sh +++ b/.ci/build-app-image.sh @@ -12,14 +12,14 @@ BASE_IMAGE=$1 TEST_APP=$2 TAG=$3 VERSION=$4 - +SAMPLE=$SAMPLES_REPO/samples/${VERSION%-coreclr}/$TEST_APP echo "[CI] Injecting Dockerfile to project $TEST_APP..." -if [[ ! -d $SAMPLES_REPO/samples/$VERSION/$TEST_APP ]]; then +if [[ ! -d $SAMPLE ]]; then echo "[CI] Sample '$TEST_APP' not found for Docker image '$VERSION'" exit 1 fi -cd $SAMPLES_REPO/samples/$VERSION/$TEST_APP +cd $SAMPLE ls -al diff --git a/1.0.0-beta7-coreclr/Dockerfile b/1.0.0-beta7-coreclr/Dockerfile new file mode 100644 index 00000000..83ad2d36 --- /dev/null +++ b/1.0.0-beta7-coreclr/Dockerfile @@ -0,0 +1,27 @@ +FROM debian:jessie + +ENV DNX_VERSION 1.0.0-beta7 +ENV DNX_USER_HOME /opt/dnx + +RUN apt-get -qq update && apt-get -qqy install unzip curl libunwind8 gettext libssl-dev libcurl3-dev zlib1g + +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 -a 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) +RUN apt-get -qqy install \ + autoconf \ + automake \ + build-essential \ + libtool +RUN LIBUV_VERSION=1.4.2 \ + && 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 + +ENV PATH $PATH:$DNX_USER_HOME/runtimes/default/bin diff --git a/1.0.0-beta7/README.md b/1.0.0-beta7/README.md index 5a4828ba..d362b6cb 100644 --- a/1.0.0-beta7/README.md +++ b/1.0.0-beta7/README.md @@ -14,6 +14,7 @@ This project is part of ASP.NET 5. You can find samples, documentation, and gett ## Supported tags * [`1.0.0-beta7`, `latest` _(1.0.0-beta7/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-beta7/Dockerfile) +* [`1.0.0-beta7`, `coreclr` _(1.0.0-beta7/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-beta7-coreclr/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) * [`1.0.0-beta4`, _(1.0.0-beta4/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-beta4/Dockerfile)