Skip to content
This repository was archived by the owner on May 31, 2019. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions 1.0.0-beta3/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ This project is part of ASP.NET 5. You can find samples, documentation, and gett
* [`1.0.0-beta2`, _(1.0.0-beta2/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-beta2/Dockerfile)
* [`1.0.0-beta1` _(1.0.0-beta1/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/1.0.0-beta1/Dockerfile)
* [`nightly` _(nightly/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/nightly/Dockerfile)
* [`coreclr-1.0.0-beta5-11624` _(coreclr-1.0.0-beta5-11624/Dockerfile)_](https://github.com/aspnet/aspnet-docker/blob/master/coreclr-1.0.0-beta5-11624/Dockerfile)

## How to use this image

Expand Down
21 changes: 21 additions & 0 deletions coreclr-1.0.0-beta5-11624/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
FROM ubuntu:14.04

ENV DNX_FEED https://www.myget.org/F/aspnetvnext/api/v2

RUN apt-get update -qq \
&& apt-get install -qqy libunwind8 libssl-dev curl unzip libtool automake build-essential

# Install libuv for Kestrel from source code (binary is not in wheezy and one in jessie is still too old)
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

RUN curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh \
&& bash -c "source $HOME/.dnx/dnvm/dnvm.sh \
&& dnvm install 1.0.0-beta5-11624 -r coreclr -arch x64 -a default \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These builds come & go every day... within a few days that build will be gone. I can pin builds on MyGet... any particular build you want? This one? A newer one?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why does it need to be specific? Is this just for the parts unlimited demo?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm ok I can certainly pin it but I wonder what else would need to be pinned. Pinning just one DNX package is easy. But for example we're embarking on another big round of renames and so finding compatible packages will be difficult because other packages that rev will eventually stop working with this DNX. It's not feasible for us to find a graph of ~200 packages and pinning them all.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Eilon Please pin this build. It has been tested for the PartsUnlimited app. If needed we could add another one for coreclr-nightly.
@davidfowl Yes.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We saved a published PartsUnlimited app with its dependencies. So I think that will continue to work.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you have the full closure of what's needed then you're fine for whoever uses the exact snapshot. But this Docker image as it is currently configured will eventually cease to be useful (in a few days, possibly).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We discussed this with @ahmetalpbalkan, and I believe (Ahmet please correct me if wrong) that unless something changes that results in re-generating the image produced by this dockerfile, the resultant image will stay the same (and thus not need to fetch dependencies) unless someone triggers an update for it. My understanding was that given the runtime is already on the docker image used and all dependencies are in the tar.gz, the only way that we would break this setup from working would be if you unpinned the 11624 DNX and then someone regenerated the coreclr-1.0.0-beta5-11624 image.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK... if you're confident it's fine then I'm fine with that 😄 Worst case if something goes awry we can regenerate everything with a newer build.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm happy where this landed. As @MattGal says, the PartsUnlimited app we are handing out has all its dependencies, so we shouldn't have to hit myget for the main use case for this image.

&& ln -s $HOME/.dnx/runtimes/dnx-coreclr-linux-x64.1.0.0-beta5-11624 $HOME/.dnx/runtimes/default"

ENV PATH $PATH:/root/.dnx/runtimes/default/bin