備忘録

備忘録

.NET CoreコンソールアプリケーションをDockerで動かす方法

Ⅰ. はじめに

タイトルの通り「.NET CoreコンソールアプリケーションをDockerで動かす方法」です。

Ⅱ. 環境

  • Docker 18.09.1
  • .NET Core 2.2

Ⅱ. やり方

1. 適当なコンソールアプリケーションを作成する

f:id:kagasu:20190116095321p:plain

Program.cs

static void Main(string[] args)
{
  Console.WriteLine($"Hello Docker! {args[0]}");
}

Dockerfile
※VisualStudioでDockerfileのプロパティを「出力ディレクトリにコピー」を「新しい場合はコピーする」に変更する

FROM mcr.microsoft.com/dotnet/core/sdk:3.0
WORKDIR /app
COPY . .

ENTRYPOINT ["dotnet", "HelloDocker.dll", "abc"]
2.アプリケーションを発行する
dotnet publish -c Release
3.Dockerイメージをビルドする
cd HelloDocker/HelloDocker/bin/Release/netcoreapp2.2/publish
docker build . -t test
4. Dockerコンテナを起動する
$ docker run test
Hello Docker! abc