From 117ad3bb4b8d232bc42c62d0b6f72bc184b7f049 Mon Sep 17 00:00:00 2001 From: Denis Prokhorchik Date: Sat, 6 Nov 2021 17:54:57 +0300 Subject: [PATCH 1/6] feat: add docker file for c-gen --- src/Services/c-gen/.dockerignore | 25 +++++++++++++++ src/Services/c-gen/O2NextGen.CGen.sln | 6 ++++ .../Dockerfile | 24 ++++++++++++++ ...O2NextGen.CertificateManagement.Api.csproj | 19 ++++------- src/Services/c-gen/docker-compose.dcproj | 18 +++++++++++ .../c-gen/docker-compose.override.yml | 8 +++++ src/Services/c-gen/docker-compose.yml | 8 +++++ src/docker-compose.override.yml | 8 +++++ src/docker-compose.yaml | 32 +++++++++++++++++++ 9 files changed, 136 insertions(+), 12 deletions(-) create mode 100644 src/Services/c-gen/.dockerignore create mode 100644 src/Services/c-gen/O2NextGen.CertificateManagement.Api/Dockerfile create mode 100644 src/Services/c-gen/docker-compose.dcproj create mode 100644 src/Services/c-gen/docker-compose.override.yml create mode 100644 src/Services/c-gen/docker-compose.yml create mode 100644 src/docker-compose.override.yml create mode 100644 src/docker-compose.yaml diff --git a/src/Services/c-gen/.dockerignore b/src/Services/c-gen/.dockerignore new file mode 100644 index 00000000..bdca33b4 --- /dev/null +++ b/src/Services/c-gen/.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/c-gen/O2NextGen.CGen.sln b/src/Services/c-gen/O2NextGen.CGen.sln index afa172ff..38371d38 100644 --- a/src/Services/c-gen/O2NextGen.CGen.sln +++ b/src/Services/c-gen/O2NextGen.CGen.sln @@ -19,6 +19,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests.O2NextGen.Certificate EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests.O2NextGen.CertificateManagement.Impl", "Tests\Tests.O2NextGen.CertificateManagement.Impl\Tests.O2NextGen.CertificateManagement.Impl.csproj", "{6FB50F98-47E7-4960-80F0-58562914ADDE}" EndProject +Project("{E53339B2-1760-4266-BCC7-CA923CBCF16C}") = "docker-compose", "docker-compose.dcproj", "{C215AFF1-8653-4345-847B-0003A1F64FD3}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -53,6 +55,10 @@ Global {6FB50F98-47E7-4960-80F0-58562914ADDE}.Debug|Any CPU.Build.0 = Debug|Any CPU {6FB50F98-47E7-4960-80F0-58562914ADDE}.Release|Any CPU.ActiveCfg = Release|Any CPU {6FB50F98-47E7-4960-80F0-58562914ADDE}.Release|Any CPU.Build.0 = Release|Any CPU + {C215AFF1-8653-4345-847B-0003A1F64FD3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C215AFF1-8653-4345-847B-0003A1F64FD3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C215AFF1-8653-4345-847B-0003A1F64FD3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C215AFF1-8653-4345-847B-0003A1F64FD3}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/src/Services/c-gen/O2NextGen.CertificateManagement.Api/Dockerfile b/src/Services/c-gen/O2NextGen.CertificateManagement.Api/Dockerfile new file mode 100644 index 00000000..c2e67b07 --- /dev/null +++ b/src/Services/c-gen/O2NextGen.CertificateManagement.Api/Dockerfile @@ -0,0 +1,24 @@ +#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.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj", "O2NextGen.CertificateManagement.Api/"] +COPY ["O2NextGen.CertificateManagement.Business/O2NextGen.CertificateManagement.Business.csproj", "O2NextGen.CertificateManagement.Business/"] +COPY ["O2NextGen.CertificateManagement.Data/O2NextGen.CertificateManagement.Data.csproj", "O2NextGen.CertificateManagement.Data/"] +COPY ["O2NextGen.CertificateManagement.Impl/O2NextGen.CertificateManagement.Impl.csproj", "O2NextGen.CertificateManagement.Impl/"] +RUN dotnet restore "O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj" +COPY . . +WORKDIR "/src/O2NextGen.CertificateManagement.Api" +RUN dotnet build "O2NextGen.CertificateManagement.Api.csproj" -c Release -o /app/build + +FROM build AS publish +RUN dotnet publish "O2NextGen.CertificateManagement.Api.csproj" -c Release -o /app/publish + +FROM base AS final +WORKDIR /app +COPY --from=publish /app/publish . +ENTRYPOINT ["dotnet", "O2NextGen.CertificateManagement.Api.dll"] diff --git a/src/Services/c-gen/O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj b/src/Services/c-gen/O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj index 4403b80d..a8bbd8f9 100644 --- a/src/Services/c-gen/O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj +++ b/src/Services/c-gen/O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj @@ -3,6 +3,7 @@ netcoreapp2.2 O2NextGen.CertificateManagement.Web + ../docker-compose.dcproj @@ -11,23 +12,17 @@ - - 2.2.0 + - - 2.1.1 + - - 2.2.0 + - - 1.5.0 + - - 2.1.0 + - - 2.2.0 + diff --git a/src/Services/c-gen/docker-compose.dcproj b/src/Services/c-gen/docker-compose.dcproj new file mode 100644 index 00000000..e49ec64c --- /dev/null +++ b/src/Services/c-gen/docker-compose.dcproj @@ -0,0 +1,18 @@ + + + + 2.1 + Linux + {C215AFF1-8653-4345-847B-0003A1F64FD3} + True + {Scheme}://localhost:{ServicePort} + o2nextgen.certificatemanagement.api + + + + docker-compose.yml + + + + + diff --git a/src/Services/c-gen/docker-compose.override.yml b/src/Services/c-gen/docker-compose.override.yml new file mode 100644 index 00000000..1f18e6df --- /dev/null +++ b/src/Services/c-gen/docker-compose.override.yml @@ -0,0 +1,8 @@ +version: '3.4' + +services: + o2nextgen.certificatemanagement.api: + environment: + - ASPNETCORE_ENVIRONMENT=Development + ports: + - "80" diff --git a/src/Services/c-gen/docker-compose.yml b/src/Services/c-gen/docker-compose.yml new file mode 100644 index 00000000..e37ff1e4 --- /dev/null +++ b/src/Services/c-gen/docker-compose.yml @@ -0,0 +1,8 @@ +version: '3.4' + +services: + o2nextgen.certificatemanagement.api: + image: ${DOCKER_REGISTRY-}o2nextgencertificatemanagement + build: + context: . + dockerfile: O2NextGen.CertificateManagement.Api/Dockerfile diff --git a/src/docker-compose.override.yml b/src/docker-compose.override.yml new file mode 100644 index 00000000..87fc3ec7 --- /dev/null +++ b/src/docker-compose.override.yml @@ -0,0 +1,8 @@ +version: '3.4' +services: + certificate.api: + environment: + - ASPNETCORE_ENVIRONMENT=Development + - ConnectionString=${O2_AZURE_IDENTITY_DB:-Server=sql.data;Database=O2Bionics.o2nextgen.CertificateDb;User Id=sa;Password=Pass@word;} + ports: + - "10102:80" \ No newline at end of file diff --git a/src/docker-compose.yaml b/src/docker-compose.yaml new file mode 100644 index 00000000..16dad10d --- /dev/null +++ b/src/docker-compose.yaml @@ -0,0 +1,32 @@ +version: '3.4' + + networks: + frontend: + backend: + + services: + + sql.data: + image: microsoft/mssql-server-linux:latest + container_name: sqldatacontainer + environment: + - SA_PASSWORD=Pass@word + - ACCEPT_EULA=Y + # - MSSQL_PID=Developer + ports: + - "1433:1433" + networks: + - backend + + certificate.api: + image: ${DOCKER_REGISTRY:-o2nextgen}/o2-certificate.api:${PLATFORM:-linux}-${TAG:-latest} + build: + context: ./Services/cgen/O2NextGen.CertificateManagement.Api/ + dockerfile: Dockerfile + depends_on: + - sql.data + ports: + - "10102:80" + networks: + - backend + - frontend \ No newline at end of file From d6a72074d4a9e0209c20f17ab3dfca451a536be3 Mon Sep 17 00:00:00 2001 From: Denis Prokhorchik Date: Sat, 6 Nov 2021 17:54:57 +0300 Subject: [PATCH 2/6] devops: update docker-compose.yaml --- src/docker-compose.yaml | 59 +++++++++++++++++++++-------------------- 1 file changed, 30 insertions(+), 29 deletions(-) diff --git a/src/docker-compose.yaml b/src/docker-compose.yaml index 16dad10d..c49bfcea 100644 --- a/src/docker-compose.yaml +++ b/src/docker-compose.yaml @@ -1,32 +1,33 @@ version: '3.4' +networks: + frontend: + backend: - networks: - frontend: - backend: - - services: +services: + sql.data: + image: mcr.microsoft.com/mssql/server:2017-latest + container_name: sqldatacontainer + environment: + - SA_PASSWORD=Pass@word + - ACCEPT_EULA=Y + # - MSSQL_PID=Developer + ports: + - "1433:1433" + networks: + - backend - sql.data: - image: microsoft/mssql-server-linux:latest - container_name: sqldatacontainer - environment: - - SA_PASSWORD=Pass@word - - ACCEPT_EULA=Y - # - MSSQL_PID=Developer - ports: - - "1433:1433" - networks: - - backend - - certificate.api: - image: ${DOCKER_REGISTRY:-o2nextgen}/o2-certificate.api:${PLATFORM:-linux}-${TAG:-latest} - build: - context: ./Services/cgen/O2NextGen.CertificateManagement.Api/ - dockerfile: Dockerfile - depends_on: - - sql.data - ports: - - "10102:80" - networks: - - backend - - frontend \ No newline at end of file + certificate.api: + image: ${DOCKER_REGISTRY:-o2nextgen}/cgen.api:${PLATFORM:-linux}-${TAG:-latest} + build: + context: ./Services/c-gen/O2NextGen.CertificateManagement.Api/ + dockerfile: Dockerfile + environment: + - ASPNETCORE_ENVIRONMENT=Development + - ConnectionString=${O2_AZURE_IDENTITY_DB:-Server=sql.data;Database=O2Bionics.o2nextgen.CertificateDb;User Id=sa;Password=Pass@word;} + depends_on: + - sql.data + ports: + - "10102:80" + networks: + - backend + - frontend \ No newline at end of file From f618036476bbc708800d282f0652ec330c2f405a Mon Sep 17 00:00:00 2001 From: Denis Prokhorchik Date: Thu, 4 Nov 2021 03:33:54 +0300 Subject: [PATCH 3/6] feat: add docker file for c-gen --- src/docker-compose.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/docker-compose.yaml b/src/docker-compose.yaml index c49bfcea..11b15201 100644 --- a/src/docker-compose.yaml +++ b/src/docker-compose.yaml @@ -30,4 +30,5 @@ services: - "10102:80" networks: - backend - - frontend \ No newline at end of file + - frontend + - frontend From 911909b1d59767d17be6617878b51c8f20700c7f Mon Sep 17 00:00:00 2001 From: Denis Prokhorchik Date: Sat, 6 Nov 2021 04:28:59 +0300 Subject: [PATCH 4/6] devops: update docker-compose.yaml --- src/docker-compose.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/src/docker-compose.yaml b/src/docker-compose.yaml index 11b15201..73520d1d 100644 --- a/src/docker-compose.yaml +++ b/src/docker-compose.yaml @@ -31,4 +31,3 @@ services: networks: - backend - frontend - - frontend From 154baa945bbbfae78627d29c1516ebde0fbd0b53 Mon Sep 17 00:00:00 2001 From: Denis Prokhorchik Date: Thu, 11 Nov 2021 17:34:15 +0300 Subject: [PATCH 5/6] issue-76: add dockerfile for c-gen --- .../O2NextGen.CertificateManagement.Api/Dockerfile | 10 +++++----- src/docker-compose.yaml | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Services/c-gen/O2NextGen.CertificateManagement.Api/Dockerfile b/src/Services/c-gen/O2NextGen.CertificateManagement.Api/Dockerfile index c2e67b07..b2fc8d4b 100644 --- a/src/Services/c-gen/O2NextGen.CertificateManagement.Api/Dockerfile +++ b/src/Services/c-gen/O2NextGen.CertificateManagement.Api/Dockerfile @@ -1,14 +1,14 @@ #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 +FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-stretch-slim AS base WORKDIR /app EXPOSE 80 -FROM mcr.microsoft.com/dotnet/sdk:2.2 AS build +FROM mcr.microsoft.com/dotnet/core/sdk:2.2-stretch AS build WORKDIR /src -COPY ["O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj", "O2NextGen.CertificateManagement.Api/"] -COPY ["O2NextGen.CertificateManagement.Business/O2NextGen.CertificateManagement.Business.csproj", "O2NextGen.CertificateManagement.Business/"] -COPY ["O2NextGen.CertificateManagement.Data/O2NextGen.CertificateManagement.Data.csproj", "O2NextGen.CertificateManagement.Data/"] +COPY ["O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj", "O2NextGen.CertificateManagement.Api/"] +COPY ["O2NextGen.CertificateManagement.Business/O2NextGen.CertificateManagement.Business.csproj", "O2NextGen.CertificateManagement.Business/"] +COPY ["O2NextGen.CertificateManagement.Data/O2NextGen.CertificateManagement.Data.csproj", "O2NextGen.CertificateManagement.Data/"] COPY ["O2NextGen.CertificateManagement.Impl/O2NextGen.CertificateManagement.Impl.csproj", "O2NextGen.CertificateManagement.Impl/"] RUN dotnet restore "O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj" COPY . . diff --git a/src/docker-compose.yaml b/src/docker-compose.yaml index 73520d1d..354e9402 100644 --- a/src/docker-compose.yaml +++ b/src/docker-compose.yaml @@ -19,7 +19,7 @@ services: certificate.api: image: ${DOCKER_REGISTRY:-o2nextgen}/cgen.api:${PLATFORM:-linux}-${TAG:-latest} build: - context: ./Services/c-gen/O2NextGen.CertificateManagement.Api/ + context: Services/c-gen/O2NextGen.CertificateManagement.Api/ dockerfile: Dockerfile environment: - ASPNETCORE_ENVIRONMENT=Development From 77ca6f9c65790db1647e3c38c931f175dd57cead Mon Sep 17 00:00:00 2001 From: Denis Prokhorchik Date: Thu, 11 Nov 2021 17:42:15 +0300 Subject: [PATCH 6/6] fix: delete docker-compose.yml of c-gen --- src/Services/c-gen/O2NextGen.CGen.sln | 6 ------ .../O2NextGen.CertificateManagement.Api.csproj | 1 - src/Services/c-gen/docker-compose.dcproj | 18 ------------------ src/Services/c-gen/docker-compose.override.yml | 8 -------- src/Services/c-gen/docker-compose.yml | 8 -------- 5 files changed, 41 deletions(-) delete mode 100644 src/Services/c-gen/docker-compose.dcproj delete mode 100644 src/Services/c-gen/docker-compose.override.yml delete mode 100644 src/Services/c-gen/docker-compose.yml diff --git a/src/Services/c-gen/O2NextGen.CGen.sln b/src/Services/c-gen/O2NextGen.CGen.sln index 38371d38..afa172ff 100644 --- a/src/Services/c-gen/O2NextGen.CGen.sln +++ b/src/Services/c-gen/O2NextGen.CGen.sln @@ -19,8 +19,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests.O2NextGen.Certificate EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests.O2NextGen.CertificateManagement.Impl", "Tests\Tests.O2NextGen.CertificateManagement.Impl\Tests.O2NextGen.CertificateManagement.Impl.csproj", "{6FB50F98-47E7-4960-80F0-58562914ADDE}" EndProject -Project("{E53339B2-1760-4266-BCC7-CA923CBCF16C}") = "docker-compose", "docker-compose.dcproj", "{C215AFF1-8653-4345-847B-0003A1F64FD3}" -EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -55,10 +53,6 @@ Global {6FB50F98-47E7-4960-80F0-58562914ADDE}.Debug|Any CPU.Build.0 = Debug|Any CPU {6FB50F98-47E7-4960-80F0-58562914ADDE}.Release|Any CPU.ActiveCfg = Release|Any CPU {6FB50F98-47E7-4960-80F0-58562914ADDE}.Release|Any CPU.Build.0 = Release|Any CPU - {C215AFF1-8653-4345-847B-0003A1F64FD3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C215AFF1-8653-4345-847B-0003A1F64FD3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C215AFF1-8653-4345-847B-0003A1F64FD3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C215AFF1-8653-4345-847B-0003A1F64FD3}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/src/Services/c-gen/O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj b/src/Services/c-gen/O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj index a8bbd8f9..87b303c6 100644 --- a/src/Services/c-gen/O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj +++ b/src/Services/c-gen/O2NextGen.CertificateManagement.Api/O2NextGen.CertificateManagement.Api.csproj @@ -3,7 +3,6 @@ netcoreapp2.2 O2NextGen.CertificateManagement.Web - ../docker-compose.dcproj diff --git a/src/Services/c-gen/docker-compose.dcproj b/src/Services/c-gen/docker-compose.dcproj deleted file mode 100644 index e49ec64c..00000000 --- a/src/Services/c-gen/docker-compose.dcproj +++ /dev/null @@ -1,18 +0,0 @@ - - - - 2.1 - Linux - {C215AFF1-8653-4345-847B-0003A1F64FD3} - True - {Scheme}://localhost:{ServicePort} - o2nextgen.certificatemanagement.api - - - - docker-compose.yml - - - - - diff --git a/src/Services/c-gen/docker-compose.override.yml b/src/Services/c-gen/docker-compose.override.yml deleted file mode 100644 index 1f18e6df..00000000 --- a/src/Services/c-gen/docker-compose.override.yml +++ /dev/null @@ -1,8 +0,0 @@ -version: '3.4' - -services: - o2nextgen.certificatemanagement.api: - environment: - - ASPNETCORE_ENVIRONMENT=Development - ports: - - "80" diff --git a/src/Services/c-gen/docker-compose.yml b/src/Services/c-gen/docker-compose.yml deleted file mode 100644 index e37ff1e4..00000000 --- a/src/Services/c-gen/docker-compose.yml +++ /dev/null @@ -1,8 +0,0 @@ -version: '3.4' - -services: - o2nextgen.certificatemanagement.api: - image: ${DOCKER_REGISTRY-}o2nextgencertificatemanagement - build: - context: . - dockerfile: O2NextGen.CertificateManagement.Api/Dockerfile