ERR_EMPTY_RESPONSE connecting to a Docker container in Chrome

When you get this error it means you’ve exposed the right port in your Dockerfile, but you have to make sure the app within your container is binding to 0.0.0.0 instead of localhost or 127.0.0.1.

I got this error using Angular CLI’s ng serve within a container. I had to add –host=0.0.0.0 to the ENTRYPOINT arguments. If you’re using a different framework check for a similar command-line argument, configuration parameter or setting.

Dotnet Core Build Error in Docker: Resource file “**/*.resx” cannot be found

While building my new .NET Core project using Docker I ran into an error with the two stage build:

/usr/share/dotnet/sdk/2.0.0/Microsoft.Common.CurrentVersion.targets(2924,5): error MSB3552: Resource file “**/*.resx” cannot be found. [/Hapthorn.csproj]
The command ‘/bin/sh -c dotnet publish -c Release -o out’ returned a non-zero code: 1

The problem it turned out was that while trying to tune my Dockerfile I’d accidentally removed the WORKDIR directive. As a result MSBuild was interpreting the *.resx as an absolute path instead of a grouping/collection directive.

To fix it I put back in a WORKDIR /src directive in my Dockerfile.

Quick and easy!

What is the difference between NPM and Bower?

NPM is is a package manager for NodeJS. It installs packages so that they can be used with Node applications using the Node require() keyword. NPM uses a repository of NPM packages, similar to the NuGet Gallery package repository.

Bower, on the other hand, calls itself “A package manager for the web”. Bower installs front-end frameworks for your website. Bower doesn’t have a repository and can grab packages from many places, most notably straight from GitHub!

Continue reading “What is the difference between NPM and Bower?”

Advice for .NET Web Developers: Learn the command-line!

Visual Studio has spoiled us .NET developers. In Visual Studio we have a GUI that does everything for us: compiling, source-control, editing, you don’t even have to remember class or method names because of auto-complete and parameter guessing! It is all there and it holds your hand and it feels safe and easy.

The next version of ASP.NET is going to use a lot of the web functionality that many .NET devs have never seen: NPM, Bower, Grunt, and others. Visual Studio will probably cover the front-end of those things, but it will be invaluable for you to learn them the way they were meant to be used: from the command-line.

64-bit Mobile

Probably the least interesting and noticed and talked about feature of the new iPhone 5S and iPad is the 64-bit A7 processor.
I guess it had to happen eventually but why now? Maybe this is to get Apple ready to ditch Intel for desktop and move into A* processors across the board?

The Android Advantage

Last November I had to trade in my LG Windows Phone 7 phone. Unfortunately I was a month early for the new wave of Windows Phone 8 phones, so I ended up going the safe route and getting a Samsung Galaxy S3. To me there is one thing that sets Android based phones head-and-shoulders above the iPhone and Windows Phone competitors.

Continue reading “The Android Advantage”