Skip to content

Commit

Permalink
230413
Browse files Browse the repository at this point in the history
  • Loading branch information
Tynab committed Apr 13, 2023
1 parent 5d5be62 commit 845133d
Show file tree
Hide file tree
Showing 9 changed files with 133 additions and 10 deletions.
25 changes: 25 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
**/.classpath
**/.dockerignore
**/.env
**/.git
**/.gitignore
**/.project
**/.settings
**/.toolstarget
**/.vs
**/.vscode
**/*.*proj.user
**/*.dbmdl
**/*.jfm
**/azds.yaml
**/bin
**/charts
**/docker-compose*
**/Dockerfile*
**/node_modules
**/npm-debug.log
**/obj
**/secrets.dev.yaml
**/values.dev.yaml
LICENSE
README.md
6 changes: 6 additions & 0 deletions YANLib.sln
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "lib", "lib", "{25EA463A-93D
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "YANLib", "lib\YANLib\YANLib.csproj", "{8B38E857-59CA-446E-8E46-EAD98567E96E}"
EndProject
Project("{E53339B2-1760-4266-BCC7-CA923CBCF16C}") = "docker-compose", "docker-compose.dcproj", "{696811A9-FD68-4538-85AD-07BB9C30CFCA}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down Expand Up @@ -107,6 +109,10 @@ Global
{8B38E857-59CA-446E-8E46-EAD98567E96E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8B38E857-59CA-446E-8E46-EAD98567E96E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8B38E857-59CA-446E-8E46-EAD98567E96E}.Release|Any CPU.Build.0 = Release|Any CPU
{696811A9-FD68-4538-85AD-07BB9C30CFCA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{696811A9-FD68-4538-85AD-07BB9C30CFCA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{696811A9-FD68-4538-85AD-07BB9C30CFCA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{696811A9-FD68-4538-85AD-07BB9C30CFCA}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down
18 changes: 18 additions & 0 deletions docker-compose.dcproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" Sdk="Microsoft.Docker.Sdk">
<PropertyGroup Label="Globals">
<ProjectVersion>2.1</ProjectVersion>
<DockerTargetOS>Linux</DockerTargetOS>
<ProjectGuid>696811a9-fd68-4538-85ad-07bb9c30cfca</ProjectGuid>
<DockerLaunchAction>LaunchBrowser</DockerLaunchAction>
<DockerServiceUrl>{Scheme}://localhost:{ServicePort}</DockerServiceUrl>
<DockerServiceName>yanlib.httpapi.host</DockerServiceName>
</PropertyGroup>
<ItemGroup>
<None Include="docker-compose.override.yml">
<DependentUpon>docker-compose.yml</DependentUpon>
</None>
<None Include="docker-compose.yml" />
<None Include=".dockerignore" />
</ItemGroup>
</Project>
13 changes: 13 additions & 0 deletions docker-compose.override.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
version: '3.4'

services:
yanlib.httpapi.host:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=https://+:443;http://+:80
ports:
- "80"
- "443"
volumes:
- ${APPDATA}/Microsoft/UserSecrets:/root/.microsoft/usersecrets:ro
- ${APPDATA}/ASP.NET/Https:/root/.aspnet/https:ro
8 changes: 8 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
version: '3.4'

services:
yanlib.httpapi.host:
image: ${DOCKER_REGISTRY-}yanlibhttpapihost
build:
context: .
dockerfile: host/YANLib.HttpApi.Host/Dockerfile
31 changes: 31 additions & 0 deletions host/YANLib.HttpApi.Host/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#See https://aka.ms/customizecontainer to learn how to customize your debug container and how Visual Studio uses this Dockerfile to build your images for faster debugging.

FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443

FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
WORKDIR /src
COPY ["NuGet.Config", "."]
COPY ["lib/YANLib/nuget.config", "lib/YANLib/"]
COPY ["host/YANLib.HttpApi.Host/YANLib.HttpApi.Host.csproj", "host/YANLib.HttpApi.Host/"]
COPY ["src/YANLib.Application/YANLib.Application.csproj", "src/YANLib.Application/"]
COPY ["lib/YANLib/YANLib.csproj", "lib/YANLib/"]
COPY ["src/YANLib.Domain/YANLib.Domain.csproj", "src/YANLib.Domain/"]
COPY ["src/YANLib.Domain.Shared/YANLib.Domain.Shared.csproj", "src/YANLib.Domain.Shared/"]
COPY ["src/YANLib.Application.Contracts/YANLib.Application.Contracts.csproj", "src/YANLib.Application.Contracts/"]
COPY ["src/YANLib.EntityFrameworkCore/YANLib.EntityFrameworkCore.csproj", "src/YANLib.EntityFrameworkCore/"]
COPY ["src/YANLib.HttpApi/YANLib.HttpApi.csproj", "src/YANLib.HttpApi/"]
RUN dotnet restore "host/YANLib.HttpApi.Host/YANLib.HttpApi.Host.csproj"
COPY . .
WORKDIR "/src/host/YANLib.HttpApi.Host"
RUN dotnet build "YANLib.HttpApi.Host.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "YANLib.HttpApi.Host.csproj" -c Release -o /app/publish /p:UseAppHost=false

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "YANLib.HttpApi.Host.dll"]
27 changes: 17 additions & 10 deletions host/YANLib.HttpApi.Host/Properties/launchSettings.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,4 @@
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "https://localhost:44380",
"sslPort": 44380
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
Expand All @@ -18,10 +10,25 @@
"YANLib.HttpApi.Host": {
"commandName": "Project",
"launchBrowser": true,
"applicationUrl": "https://localhost:44380",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"applicationUrl": "https://localhost:44380"
},
"Docker": {
"commandName": "Docker",
"launchBrowser": true,
"launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}",
"publishAllPorts": true,
"useSSL": true
}
},
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "https://localhost:44380",
"sslPort": 44380
}
}
}
4 changes: 4 additions & 0 deletions host/YANLib.HttpApi.Host/YANLib.HttpApi.Host.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,13 @@
<RootNamespace>YANLib</RootNamespace>
<PreserveCompilationReferences>true</PreserveCompilationReferences>
<UserSecretsId>YANLib-4681b4fd-151f-4221-84a4-929d86723e4c</UserSecretsId>
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
<DockerfileContext>..\..</DockerfileContext>
<DockerComposeProjectPath>..\..\docker-compose.dcproj</DockerComposeProjectPath>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.17.2" />
<PackageReference Include="Serilog.AspNetCore" Version="5.0.0" />
<PackageReference Include="Serilog.Sinks.Async" Version="1.5.0" />
<PackageReference Include="Volo.Abp.AspNetCore.MultiTenancy" Version="6.0.0" />
Expand Down
11 changes: 11 additions & 0 deletions launchSettings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"profiles": {
"Docker Compose": {
"commandName": "DockerCompose",
"commandVersion": "1.0",
"serviceActions": {
"yanlib.httpapi.host": "StartDebugging"
}
}
}
}

0 comments on commit 845133d

Please sign in to comment.