DockerでASP.NET CoreのWebアプリケーションを実行する方法
Dockerとは、作成したプログラムソースを仮想環境上で実行するためのもので、仮想マシンと似たような働きをします。動作確認をする方法は他にもいくつかありますが、Dockerを利用するとWindowsとLinuxの環境差異による動作チェックや、動作環境の配布、スクラップ、ビルドが簡単になる利点があります。
- プログラマー
- 開発に使っていたパソコン以外でプログラムを実行することになったのですが、環境を移すのが面倒なんです。何か良い方法ないですか?
- プロジェクト
リーダー - それならDockerを使うと良いですよ。簡単に設定できて、実行環境にあまり影響を受けないですから。設定方法をお教えしましょう!
ASP.NET CoreにおけるDockerとは
ASP.NET Coreで作成したプログラムを実行するには、Visual Studio上で実行する、ビルドした実行ファイルを動かす、もしくは仮想マシン上で動作させるなどの方法があります。Dockerを利用するのも実行方法の一つですが、他の方法とは違い環境にあまり依存しない形で実行することが可能です。
なお、利用する場合にはDockerの実行ファイルをダウンロードして利用する必要があります。
ローカル環境での実行
Dockerを実行させるには、コマンドプロンプト上でアプリ名を指定して、runコマンドを打つだけです。
.NET CoreのWebアプリケーションをDockerで実行するコマンド
1
2
3
4
5
|
$ dotnet new mvc -o (実行アプリ名)
$ cd (実行するアプリのフォルダ)
$ dotnet run
…
Now listening on: https://localhost:****
|
Dockerで動かすための環境を構築するコマンド
1
2
3
4
5
6
7
8
|
FROM microsoft/dotnet:(.NETのバージョン)-sdk
WORKDIR /app
COPY *.csproj ./
RUN dotnet restore
COPY . ./
RUN dotnet publish -c Release -o out
ENTRYPOINT ["dotnet", "out/(アプリ名).dll"]
|
1
|
$ docker build -t dotnetapp-dev .
|
1
|
$ docker run --rm -p ****:?? dotnetapp-dev netcore_on_docker from Docker
|
上記のポート番号に対して、「http://localhost:****/」とブラウザで開くと、アプリのトップページが開かれます。(終了するにはCtrl+c)
- プログラマー
- 環境構築方法が単純な割には、他のパソコンで実行してもあまり変わらないのが良いですね!
- プロジェクト
リーダー - 実行環境を移したり、配布したりするときには特に有効でしょうね。
面倒な実行環境構築を簡略化できる
Dockerを使うことで、他のパソコンに実行環境を移す際の手間を簡略化することができます。また、環境ごとに動いたり動かなかったりするという事態に陥ることが少なくなる利点もあります。Webアプリ開発においても環境ごとに動作チェックをする手間を軽減してくれるでしょう。
FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
株式会社オープンアップシステムはこんな会社です
秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
数多くのエンジニアが集まります。
-
スマホアプリから業務系システムまで
スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。
-
充実した研修制度
毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。
-
資格取得を応援
スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。
-
東証プライム上場企業グループ
オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。
安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。
株式会社オープンアップシステムに興味を持った方へ
株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。
ASP.NET新着案件New Job
-
Web受注システム運用保守/VB.NET/東京都港区/【WEB面談可】
月給50万~60万円東京都港区(品川駅) -
Web受注システム開発のテスター/VB.NET/東京都港区/【WEB面談可】
月給25万~35万円東京都港区(品川駅) -
営業フロントシステム運用保守/ASP.NET/東京都江東区/【WEB面談可】
月給50万~60万円東京都江東区(木場駅) -
営業フロントシステム開発のテスター/ASP.NET/東京都江東区/【WEB面談可】
月給25万~35万円東京都江東区(木場駅) -
営業フロントシステム開発/ASP.NET/東京都江東区/【WEB面談可】
月給35万~41万円東京都江東区(木場駅) -
Web受注システム開発/VB.NET/東京都港区/【WEB面談可】
月給45万~60万円東京都港区(品川駅)