Ⅰ. はじめに
タイトルの通り「.NET CoreコンソールアプリケーションをDockerで動かす方法」です。
Ⅱ. 環境
- Docker 18.09.1
- .NET Core 2.2
Ⅱ. やり方
1. 適当なコンソールアプリケーションを作成する
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