diff --git a/deploy/release-deploy/clouds/azure/terraform/main.tf b/deploy/release-deploy/clouds/azure/terraform/main.tf
index 187f2b68..1df58b2f 100644
--- a/deploy/release-deploy/clouds/azure/terraform/main.tf
+++ b/deploy/release-deploy/clouds/azure/terraform/main.tf
@@ -401,6 +401,10 @@ resource "helm_release" "prometheus-stack" {
name = "grafana.ingress.ingressClassName"
value = "nginx"
}
+ # set {
+ # name = "server.ingress.pathType"
+ # value = "Prefix"
+ # }
set {
name = "grafana.ingress.path"
value = "/(.*)" # "/grafana2/?(.*)"
diff --git a/deploy/release-deploy/clouds/azure/terraform/terraform.tfvars b/deploy/release-deploy/clouds/azure/terraform/terraform.tfvars
index f9b4e1da..f17d7e1e 100644
--- a/deploy/release-deploy/clouds/azure/terraform/terraform.tfvars
+++ b/deploy/release-deploy/clouds/azure/terraform/terraform.tfvars
@@ -8,3 +8,4 @@ k8s_node_count = 1
grafana_admin_user = "grafana"
grafana_admin_password = "grafana-pass"
+harbor_admin_password = "Harbor12345" # "harbor-pass"
diff --git a/src/Services/on-tracker/.dockerignore b/src/Services/on-tracker/.dockerignore
new file mode 100644
index 00000000..bdca33b4
--- /dev/null
+++ b/src/Services/on-tracker/.dockerignore
@@ -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
\ No newline at end of file
diff --git a/src/Services/on-tracker/O2NextGen.OnTracker.Api/Dockerfile b/src/Services/on-tracker/O2NextGen.OnTracker.Api/Dockerfile
new file mode 100644
index 00000000..b6008f5c
--- /dev/null
+++ b/src/Services/on-tracker/O2NextGen.OnTracker.Api/Dockerfile
@@ -0,0 +1,25 @@
+#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.
+
+FROM mcr.microsoft.com/dotnet/aspnet:2.2 AS base
+WORKDIR /app
+EXPOSE 80
+
+FROM mcr.microsoft.com/dotnet/sdk:2.2 AS build
+WORKDIR /src
+COPY ["O2NextGen.OnTracker.Api/O2NextGen.OnTracker.Api.csproj", "O2NextGen.OnTracker.Api/"]
+COPY ["O2NextGen.OnTracker.Business/O2NextGen.OnTracker.Business.csproj", "O2NextGen.OnTracker.Business/"]
+COPY ["O2NextGen.OnTracker.Data/O2NextGen.OnTracker.Data.csproj", "O2NextGen.OnTracker.Data/"]
+COPY ["O2NextGen.OnTracker.Impl/O2NextGen.OnTracker.Impl.csproj", "O2NextGen.OnTracker.Impl/"]
+COPY ["O2NextGen.Tracker.DbUtility/O2NextGen.Tracker.DbUtility.csproj", "O2NextGen.Tracker.DbUtility/"]
+RUN dotnet restore "O2NextGen.OnTracker.Api/O2NextGen.OnTracker.Api.csproj"
+COPY . .
+WORKDIR "/src/O2NextGen.OnTracker.Api"
+RUN dotnet build "O2NextGen.OnTracker.Api.csproj" -c Release -o /app/build
+
+FROM build AS publish
+RUN dotnet publish "O2NextGen.OnTracker.Api.csproj" -c Release -o /app/publish /p:UseAppHost=false
+
+FROM base AS final
+WORKDIR /app
+COPY --from=publish /app/publish .
+ENTRYPOINT ["dotnet", "O2NextGen.OnTracker.Api.dll"]
diff --git a/src/Services/on-tracker/O2NextGen.OnTracker.Api/O2NextGen.OnTracker.Api.csproj b/src/Services/on-tracker/O2NextGen.OnTracker.Api/O2NextGen.OnTracker.Api.csproj
index c37f54b5..b65ac738 100644
--- a/src/Services/on-tracker/O2NextGen.OnTracker.Api/O2NextGen.OnTracker.Api.csproj
+++ b/src/Services/on-tracker/O2NextGen.OnTracker.Api/O2NextGen.OnTracker.Api.csproj
@@ -2,8 +2,10 @@
netcoreapp2.2
+ ../docker-compose.dcproj
+
diff --git a/src/Services/on-tracker/O2NextGen.OnTracker.sln b/src/Services/on-tracker/O2NextGen.OnTracker.sln
index 960efa0e..45480ec6 100644
--- a/src/Services/on-tracker/O2NextGen.OnTracker.sln
+++ b/src/Services/on-tracker/O2NextGen.OnTracker.sln
@@ -7,7 +7,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tools", "Tools", "{897A7BA2
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "O2NextGen.Tracker.DbUtility", "O2NextGen.Tracker.DbUtility\O2NextGen.Tracker.DbUtility.csproj", "{77D9E353-F5AE-440B-8EE8-70EBB92099AD}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "O2NetGen.OnTracker.Api", "O2NextGen.OnTracker.Api\O2NextGen.OnTracker.Api.csproj", "{2288664B-04A5-4C80-8685-2AF877F5D335}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "O2NextGen.OnTracker.Api", "O2NextGen.OnTracker.Api\O2NextGen.OnTracker.Api.csproj", "{2288664B-04A5-4C80-8685-2AF877F5D335}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "O2NextGen.OnTracker.Data", "O2NextGen.OnTracker.Data\O2NextGen.OnTracker.Data.csproj", "{23CB3AC5-E48E-4A46-B5F7-8FB1F0F00A71}"
EndProject
@@ -29,6 +29,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests.O2NextGen.OnTracker.I
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests.O2NextGen.Tracker.DbUtility", "Tests\Tests.O2NextGen.Tracker.DbUtility\Tests.O2NextGen.Tracker.DbUtility.csproj", "{2B77211A-B680-4241-A73C-4C7F88CF35A8}"
EndProject
+Project("{E53339B2-1760-4266-BCC7-CA923CBCF16C}") = "docker-compose", "docker-compose.dcproj", "{9DD56EB5-0DE9-43B2-9D08-2487DE6E4620}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -79,6 +81,10 @@ Global
{2B77211A-B680-4241-A73C-4C7F88CF35A8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2B77211A-B680-4241-A73C-4C7F88CF35A8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2B77211A-B680-4241-A73C-4C7F88CF35A8}.Release|Any CPU.Build.0 = Release|Any CPU
+ {9DD56EB5-0DE9-43B2-9D08-2487DE6E4620}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {9DD56EB5-0DE9-43B2-9D08-2487DE6E4620}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {9DD56EB5-0DE9-43B2-9D08-2487DE6E4620}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {9DD56EB5-0DE9-43B2-9D08-2487DE6E4620}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Api/Tests.O2NextGen.OnTracker.Api.csproj b/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Api/Tests.O2NextGen.OnTracker.Api.csproj
index 419b03cc..f1f19a17 100644
--- a/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Api/Tests.O2NextGen.OnTracker.Api.csproj
+++ b/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Api/Tests.O2NextGen.OnTracker.Api.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Business/Tests.O2NextGen.OnTracker.Business.csproj b/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Business/Tests.O2NextGen.OnTracker.Business.csproj
index 419b03cc..f1f19a17 100644
--- a/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Business/Tests.O2NextGen.OnTracker.Business.csproj
+++ b/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Business/Tests.O2NextGen.OnTracker.Business.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Data/Tests.O2NextGen.OnTracker.Data.csproj b/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Data/Tests.O2NextGen.OnTracker.Data.csproj
index 419b03cc..f1f19a17 100644
--- a/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Data/Tests.O2NextGen.OnTracker.Data.csproj
+++ b/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Data/Tests.O2NextGen.OnTracker.Data.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Impl/Tests.O2NextGen.OnTracker.Impl.csproj b/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Impl/Tests.O2NextGen.OnTracker.Impl.csproj
index 419b03cc..f1f19a17 100644
--- a/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Impl/Tests.O2NextGen.OnTracker.Impl.csproj
+++ b/src/Services/on-tracker/Tests/Tests.O2NextGen.OnTracker.Impl/Tests.O2NextGen.OnTracker.Impl.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/src/Services/on-tracker/Tests/Tests.O2NextGen.Tracker.DbUtility/Tests.O2NextGen.Tracker.DbUtility.csproj b/src/Services/on-tracker/Tests/Tests.O2NextGen.Tracker.DbUtility/Tests.O2NextGen.Tracker.DbUtility.csproj
index 419b03cc..f1f19a17 100644
--- a/src/Services/on-tracker/Tests/Tests.O2NextGen.Tracker.DbUtility/Tests.O2NextGen.Tracker.DbUtility.csproj
+++ b/src/Services/on-tracker/Tests/Tests.O2NextGen.Tracker.DbUtility/Tests.O2NextGen.Tracker.DbUtility.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/src/Services/on-tracker/docker-compose.dcproj b/src/Services/on-tracker/docker-compose.dcproj
new file mode 100644
index 00000000..83dd3d03
--- /dev/null
+++ b/src/Services/on-tracker/docker-compose.dcproj
@@ -0,0 +1,18 @@
+
+
+
+ 2.1
+ Linux
+ {9DD56EB5-0DE9-43B2-9D08-2487DE6E4620}
+ True
+ {Scheme}://localhost:{ServicePort}
+ o2nextgen.ontracker.api
+
+
+
+ docker-compose.yml
+
+
+
+
+
diff --git a/src/Services/on-tracker/docker-compose.override.yml b/src/Services/on-tracker/docker-compose.override.yml
new file mode 100644
index 00000000..7ff947c2
--- /dev/null
+++ b/src/Services/on-tracker/docker-compose.override.yml
@@ -0,0 +1,8 @@
+version: '3.4'
+
+services:
+ o2nextgen.ontracker.api:
+ environment:
+ - ASPNETCORE_ENVIRONMENT=Development
+ ports:
+ - "80"
diff --git a/src/Services/on-tracker/docker-compose.yml b/src/Services/on-tracker/docker-compose.yml
new file mode 100644
index 00000000..95c63661
--- /dev/null
+++ b/src/Services/on-tracker/docker-compose.yml
@@ -0,0 +1,8 @@
+version: '3.4'
+
+services:
+ o2nextgen.ontracker.api:
+ image: ${DOCKER_REGISTRY-}o2nextgenontracker
+ build:
+ context: .
+ dockerfile: O2NextGen.OnTracker.Api/Dockerfile