6 ms·
VirtualBox: the author is using a Windows machine so needs to run Linux in order to experiment with Docker. Docker: well, this is the subject of the post. Mon
by jimmcslim 13y ago
VirtualBox: the author is using a Windows machine so needs to run Linux in order to experiment with Docker.
Docker: well, this is the subject of the post.
Mono: Mono is an application runtime (specifically an open-source implementation of the CLR) just like the JVM (yes, a 'Virtual Machine' but not virtualization, I would argue, in the sense that you are stating there is too much of).
Obviously if you had .Net apps and a Windows server environment you would just deploy .Net apps to it. But there might be scenarios in which this is useful. Perhaps migrating away from Windows servers to Linux, but not wanting to rewrite the C#/.Net apps in a new platform. Although whether Mono would be able to run those apps satisfactorily (the coverage of the SDK is not complete) is of course up for debate.
- d0 13y agoThe answer to your latter question is: no. Only pretty trivial stuff is portable to Mono. I've tried it on every project I've worked on over the last 6 years to no avail. Show stopper every time.
- andyjohnson0 13y agoInterested in your experience. Were these projects desktop applications or server-side, or a mix of both?
- d0 13y agoMix of both. The killer on the server-side is always stuff like missing WCF features, odd bugs with DI containers, missing API calls, slight behavioural differences etc. Client-side. No WPF and WinForms is dreadfully incomplete. It's a no go. If you start on Mono and deploy to .Net I imagine it'd work but no-one realistically does that these days. If they were going to do that, Java would be a better choice for the product.
- danabramov 13y agoWell, client-side Microsoft has abandoned both (although of course they still run).
- d0 13y agoThey haven't abandoned any of them. We still have ATL, MFC, Win32, WPF, WinForms and now Metro. Not that I want to use any of them myself :)
- Guillaume86 13y agoYes it's a big disapointment for me, my predilection language is C# and I would love to be able to code on linux... I wish one day microsoft will be forced to port/support .NET (at least server components) to linux but I'm not holding my breath...
- skrebbel 13y agoThis is nonsense. You just have to dev with Mono in mind from the start. Basically, don't use WPF and WCF and you're all set. I'm currently in a web app team with a C# backend. Two devs run Windows, one has a Mac, and one runs Ubuntu. It works great. And yes, we deploy to Linux using Docker.
- d0 13y agoSee my comment "portable to mono". I agree with you but I wouldn't do it myself.
- hkarthik 13y ago"You just have to dev with Mono in mind from the start." You say that like it's the most trivial thing in the world. Most people attempting Mono have been loyal Windows-based .NET developers for years. Mono only has value for them if they can port their legacy apps from Windows and .NET to Mono.
- camus2 13y ago> You just have to dev with Mono in mind from the start. then it cannot replace .net .You can put it every ways you want serious C# and .net development is windows only. Mono doesnt run every C# library out there. The people pushing mono here dont have to face the consequences of that choice. It's easy for them to say "it just works", they wont be around when one realises it doesnt work. Dont use mono thinking it really works.It's an experiment.