Greetings,
I was wondering if you could help me get mono running on your OS. I really like the whole idea about a minimal, hardened OS -- and having a small footprint means a quicker feedback loop in dev.
I've been chatting with some Alpine OS committers on the IRC chat and they have built a package for mono http://pkgs.alpinelinux.org/packages?package=mono%25&repo=all&arch=x86_64 -- except it's still not quite working. Could you help me make it work, you think?
Regards,
Henrik
Can you help provide some steps to reproduce or at the very least the docker run command and Dockerfile building the image? It looks like the mono package is only in edge testing - are you running the edge tag? It wont likely work on latest or 3.1.
I got past the error -- so I don't have a dockerfile just yet showcasing a problem, but perhaps we can track making mono production worthy on alpine in this thread?
Any thoughts on this?
I'd love to see this, I've got a small amount of .Net code that I use with edge.js to access with node, though it's very limited...
Not to mention ASP.NET/MVC vNext is much more open and a minimal image base is desired.
I have just created a alpine-mono base image with a usage example.
@MattAitchison awesome! What version do you have?
@luisrudge it should have version 4.0.1-r1
@MattAitchison awesome!
The recent 3.2 release of Alpine should now have mono in it. If there is still an issue with it, please reopen and let us know how to reproduce, we'll be happy to help.
FYI, Mono 4.0 says that they have only "rudimentary support for musl libc". I'm not sure what kind of bugs that may introduce, but just in case you can try my frolvlad/alpine-mono image, which is based on glibc hack and Arch Linux mono package.
Yes, I wouldn't put anything into production without a whole lot of testing first.
@andyshinn Thanks for the help in getting this far! I hope to use much more of Alpine with this in!
I'm not seeing the package when I try to install it with the latest 3.3 image:
/ # apk add --no-cache mono
fetch http://alpine.gliderlabs.com/alpine/v3.3/main/x86_64/APKINDEX.tar.gz
fetch http://alpine.gliderlabs.com/alpine/v3.3/community/x86_64/APKINDEX.tar.gz
ERROR: unsatisfiable constraints:
mono (missing):
required by: world[mono]
Am I missing something simple?
@MattKunze the mono package is in testing repository. Follow the official wiki about adding that repo to your /etc/apk/repositories. I didn't have a chance to try this package yet since the hacky glibc version (referenced above) works fine for my project.
thanks! Added http://dl-4.alpinelinux.org/alpine/edge/testing to the list and it installed.
Now I guess to see if anything works... :)
Just tried to build something with coreclr
$ docker run -it kodj/alpine-aspnet bash
$ curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh && source ~/.dnx/dnvm/dnvm.sh
$ dnvm
@trumhemcut did it work?
have a look at https://github.com/jumanjihouse/docker-dotnet for an experiment with docker + alpine + coreclr
@trumhemcut CoreCLR is off topic in this thread. Please stick to Mono on Alpine in this thread.
Is there any way to get mono on arm32v6? the current mono package is only for x86.
@AnderssonPeter you may find a lit of issues even if you get mono on arm in alpine, under docker. There's a lot of room there for things not to work. Starting with libraries than may have hard coded builds/bits for x86.