[asp.net core 2.0 と Linux 用 docker]
私は Docker をまったく初めて使用しており、2 つのプロジェクトがあるソリューションの場合に Docker をどのように使用するか理解しようとしています。私が見たチュートリアルはすべて、単一のプロジェクトについて説明しています。
したがって、誰かが段階的な解決策を示していただければ、本当にありがたいです。
ソリューションの構造は次のようになります:
Solution.sln
|______WebAPIProject.csproj
|______ClassLibraryProject.csproj
Visual Studio では、ソリューションに Docker サポートを追加し、次のファイルを取得しました。
WebAPIProjectの下にこれを作成しましたDockerファイル:
FROM microsoft/aspnetcore:2.0
ARG source
WORKDIR /app
EXPOSE 80
COPY ${source:-obj/Docker/publish} .
ENTRYPOINT ["dotnet", "WebAPIProject.dll"]
次に、別の docker-compose 'プロジェクト' の下に次のものがあります:
ビルド
version: '3'
services:
ci-build:
image: microsoft/aspnetcore-build:1.0-2.0
volumes:
- .:/src
working_dir: /src
command: /bin/bash -c "dotnet restore ./Solution.sln && dotnet publish ./Solution.sln -c Release -o ./obj/Docker/publish"
そしてドキュメントファイル
version: '3'
services:
WebAPIProject:
image: WebAPIProject
build:
context: ./WebAPIProject
dockerfile: Dockerfile
パスに関する些細なことなのは確かですが、まったくよくわからないので、誰か少し教えていただけませんか?
ベストアンサー1
dotnet core は Windows に固有のものではなく、誰もが Visual Studio を使用するわけではないことは理解していますが、Microsoft が Visual Studio 内に組み込んだ便利な機能があります (2017 年に試しました)。
- Web プロジェクトを右クリックします。
- [追加]を選択します。
- 次に「Docker サポート」を選択します。これにより、複数のプロジェクトがコンテナに自動的に取得されます。
複数の Web プロジェクトがある場合は、それぞれに対して個別に手順を繰り返します。
Dockerコンテナの実行中に問題が発生した場合は、Hyper-V Services
「Windowsの機能」(Windows Features
スタートメニューで検索)の選択を解除し、再度選択してからコンピュータを再起動してください。ここ。