From 9c291892cd7dafdd1a785f3a25dad663643e4ee6 Mon Sep 17 00:00:00 2001
From: West14 <30056636+West14@users.noreply.github.com>
Date: Mon, 10 Jan 2022 00:50:05 +0200
Subject: [PATCH 1/6] Bump to .NET 6. Add arm64 image build. Use short commit
hash on image tag.
---
.github/workflows/build-image.yml | 18 +++++++++++++-----
Core/Core.csproj | 14 +++++++-------
docker/Dockerfile.amd64 | 4 ++--
.../{Dockerfile.aarch64 => Dockerfile.arm64} | 4 ++--
modules/ChatManagement/ChatManagement.csproj | 2 +-
modules/CombotAntiSpam/CombotAntiSpam.csproj | 2 +-
.../Destiny2.WhereIsXur.csproj | 6 +++---
modules/Entertainment/Entertainment.csproj | 2 +-
modules/RichSiteSummary/RichSiteSummary.csproj | 4 ++--
modules/UrlLimitations/UrlLimitations.csproj | 2 +-
modules/UserGroupTag/UserGroupTag.csproj | 2 +-
tests/Tests.csproj | 8 ++++----
12 files changed, 38 insertions(+), 30 deletions(-)
rename docker/{Dockerfile.aarch64 => Dockerfile.arm64} (92%)
diff --git a/.github/workflows/build-image.yml b/.github/workflows/build-image.yml
index 57cf1b0..54ab8c1 100644
--- a/.github/workflows/build-image.yml
+++ b/.github/workflows/build-image.yml
@@ -2,13 +2,15 @@
on:
push:
- branches:
- - 'dev'
jobs:
docker:
name: Build Docker image
+ strategy:
+ matrix:
+ arch: ['amd64', 'arm64']
+
runs-on: ubuntu-latest
steps:
-
@@ -27,11 +29,17 @@ jobs:
registry: ${{ secrets.REGISTRY_URL }}
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}
+ -
+ name: Get short commit SHA
+ id: commit_sha
+ run: echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
-
name: Build and push
uses: docker/build-push-action@v2
with:
context: .
- file: docker/Dockerfile.amd64
- push: true
- tags: ${{ secrets.REGISTRY_URL }}/west/telegram-bot:latest,${{ secrets.REGISTRY_URL }}/west/telegram-bot:${{ github.sha }}
\ No newline at end of file
+ file: docker/Dockerfile.${{ matrix.arch }}
+ platforms: linux/${{ matrix.arch }}
+ push: ${{ github.ref == 'refs/heads/dev' }}
+ tags: ${{ secrets.REGISTRY_URL }}/west/telegram-bot:latest,
+ |${{ secrets.REGISTRY_URL }}/west/telegram-bot:${{ steps.commit_sha.outputs.sha_short }}
\ No newline at end of file
diff --git a/Core/Core.csproj b/Core/Core.csproj
index 11d7178..bb41840 100644
--- a/Core/Core.csproj
+++ b/Core/Core.csproj
@@ -1,22 +1,22 @@
- net5.0
+ net6.0
TelegramBot
Kruzya.TelegramBot.Core
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
-
-
+
+
+
+
diff --git a/docker/Dockerfile.amd64 b/docker/Dockerfile.amd64
index a0f24e4..d8ae3d8 100644
--- a/docker/Dockerfile.amd64
+++ b/docker/Dockerfile.amd64
@@ -1,5 +1,5 @@
# Build a project
-FROM mcr.microsoft.com/dotnet/sdk:5.0.404-alpine3.14-amd64 AS build
+FROM mcr.microsoft.com/dotnet/sdk:6.0.1-alpine3.14-amd64 AS build
WORKDIR /source
# Copy project and perform restoring
@@ -23,7 +23,7 @@ RUN dotnet publish -c release -o /app --no-restore Kruzya.TelegramBot.sln && \
rm -f /app/TelegramBot.*.dll /app/TelegramBot.*.pdb
# Now reuse image with only runtime
-FROM mcr.microsoft.com/dotnet/aspnet:5.0.13-alpine3.14-amd64
+FROM mcr.microsoft.com/dotnet/aspnet:6.0.1-alpine3.14-amd64
WORKDIR /user
COPY --from=build /app /app
diff --git a/docker/Dockerfile.aarch64 b/docker/Dockerfile.arm64
similarity index 92%
rename from docker/Dockerfile.aarch64
rename to docker/Dockerfile.arm64
index fad6347..5499b48 100644
--- a/docker/Dockerfile.aarch64
+++ b/docker/Dockerfile.arm64
@@ -1,5 +1,5 @@
# Build a project
-FROM mcr.microsoft.com/dotnet/sdk:5.0.404-buster-slim-arm64v8 AS build
+FROM mcr.microsoft.com/dotnet/sdk:6.0.1-alpine3.14-arm64v8 AS build
WORKDIR /source
# Copy project and perform restoring
@@ -23,7 +23,7 @@ RUN dotnet publish -c release -o /app --no-restore Kruzya.TelegramBot.sln && \
rm -f /app/TelegramBot.*.dll /app/TelegramBot.*.pdb
# Now reuse image with only runtime
-FROM mcr.microsoft.com/dotnet/aspnet:5.0.13-alpine3.14-arm64v8
+FROM mcr.microsoft.com/dotnet/aspnet:6.0.1-alpine3.14-arm64v8
WORKDIR /user
COPY --from=build /app /app
diff --git a/modules/ChatManagement/ChatManagement.csproj b/modules/ChatManagement/ChatManagement.csproj
index dc8f81f..ff72078 100644
--- a/modules/ChatManagement/ChatManagement.csproj
+++ b/modules/ChatManagement/ChatManagement.csproj
@@ -1,7 +1,7 @@
- net5.0
+ net6.0
TelegramBot.ChatManagement
West.TelegramBot.ChatManagement
diff --git a/modules/CombotAntiSpam/CombotAntiSpam.csproj b/modules/CombotAntiSpam/CombotAntiSpam.csproj
index ada4e7e..e2f3e82 100644
--- a/modules/CombotAntiSpam/CombotAntiSpam.csproj
+++ b/modules/CombotAntiSpam/CombotAntiSpam.csproj
@@ -1,7 +1,7 @@
- net5.0
+ net6.0
TelegramBot.CombotAntiSpam
Kruzya.TelegramBot.CombotAntiSpam
diff --git a/modules/Destiny2.WhereIsXur/Destiny2.WhereIsXur.csproj b/modules/Destiny2.WhereIsXur/Destiny2.WhereIsXur.csproj
index eb91cf1..1e8fa06 100644
--- a/modules/Destiny2.WhereIsXur/Destiny2.WhereIsXur.csproj
+++ b/modules/Destiny2.WhereIsXur/Destiny2.WhereIsXur.csproj
@@ -1,7 +1,7 @@
- net5.0
+ net6.0
TelegramBot.D2_WhereIsXur
Kruzya.TelegramBot.Destiny2.WhereIsXur
@@ -11,8 +11,8 @@
-
-
+
+
diff --git a/modules/Entertainment/Entertainment.csproj b/modules/Entertainment/Entertainment.csproj
index 609decc..5a62490 100644
--- a/modules/Entertainment/Entertainment.csproj
+++ b/modules/Entertainment/Entertainment.csproj
@@ -1,7 +1,7 @@
- net5.0
+ net6.0
TelegramBot.Entertainment
West.Entertainment
diff --git a/modules/RichSiteSummary/RichSiteSummary.csproj b/modules/RichSiteSummary/RichSiteSummary.csproj
index c82745b..7341b84 100644
--- a/modules/RichSiteSummary/RichSiteSummary.csproj
+++ b/modules/RichSiteSummary/RichSiteSummary.csproj
@@ -1,7 +1,7 @@
- net5.0
+ net6.0
TelegramBot.RichSiteSummary
Kruzya.TelegramBot.RichSiteSummary
@@ -11,7 +11,7 @@
-
+
diff --git a/modules/UrlLimitations/UrlLimitations.csproj b/modules/UrlLimitations/UrlLimitations.csproj
index 2a7e32e..09c082d 100644
--- a/modules/UrlLimitations/UrlLimitations.csproj
+++ b/modules/UrlLimitations/UrlLimitations.csproj
@@ -1,7 +1,7 @@
- net5.0
+ net6.0
TelegramBot.UrlLimitations
Kruzya.TelegramBot.UrlLimitations
diff --git a/modules/UserGroupTag/UserGroupTag.csproj b/modules/UserGroupTag/UserGroupTag.csproj
index 686ce30..2c5932d 100644
--- a/modules/UserGroupTag/UserGroupTag.csproj
+++ b/modules/UserGroupTag/UserGroupTag.csproj
@@ -1,7 +1,7 @@
- net5.0
+ net6.0
TelegramBot.UserGroupTag
diff --git a/tests/Tests.csproj b/tests/Tests.csproj
index 5e99fe4..d25df7c 100644
--- a/tests/Tests.csproj
+++ b/tests/Tests.csproj
@@ -1,7 +1,7 @@
- net5.0
+ net6.0
false
@@ -11,9 +11,9 @@
-
-
-
+
+
+
From 938a9188150bc7741d8699710ef04566045baade Mon Sep 17 00:00:00 2001
From: West14 <30056636+West14@users.noreply.github.com>
Date: Mon, 10 Jan 2022 00:51:08 +0200
Subject: [PATCH 2/6] [ci] fix workflow
---
.github/workflows/build-image.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/build-image.yml b/.github/workflows/build-image.yml
index 54ab8c1..b38c8e6 100644
--- a/.github/workflows/build-image.yml
+++ b/.github/workflows/build-image.yml
@@ -42,4 +42,4 @@ jobs:
platforms: linux/${{ matrix.arch }}
push: ${{ github.ref == 'refs/heads/dev' }}
tags: ${{ secrets.REGISTRY_URL }}/west/telegram-bot:latest,
- |${{ secrets.REGISTRY_URL }}/west/telegram-bot:${{ steps.commit_sha.outputs.sha_short }}
\ No newline at end of file
+ ${{ secrets.REGISTRY_URL }}/west/telegram-bot:${{ steps.commit_sha.outputs.sha_short }}
\ No newline at end of file
From ceb9825f29b262ba29d68948f5e6a3294ac8c7f6 Mon Sep 17 00:00:00 2001
From: West14 <30056636+West14@users.noreply.github.com>
Date: Mon, 10 Jan 2022 01:01:38 +0200
Subject: [PATCH 3/6] [ci] Multiarch build. Fix dockerfile.
---
.github/workflows/build-image.yml | 8 ++----
docker/Dockerfile | 44 +++++++++++++++++++++++++++++++
docker/Dockerfile.amd64 | 4 +--
docker/Dockerfile.arm64 | 4 +--
4 files changed, 50 insertions(+), 10 deletions(-)
create mode 100644 docker/Dockerfile
diff --git a/.github/workflows/build-image.yml b/.github/workflows/build-image.yml
index b38c8e6..3e48a06 100644
--- a/.github/workflows/build-image.yml
+++ b/.github/workflows/build-image.yml
@@ -6,11 +6,7 @@ on:
jobs:
docker:
name: Build Docker image
-
- strategy:
- matrix:
- arch: ['amd64', 'arm64']
-
+
runs-on: ubuntu-latest
steps:
-
@@ -39,7 +35,7 @@ jobs:
with:
context: .
file: docker/Dockerfile.${{ matrix.arch }}
- platforms: linux/${{ matrix.arch }}
+ platforms: linux/amd64,linux/arm64
push: ${{ github.ref == 'refs/heads/dev' }}
tags: ${{ secrets.REGISTRY_URL }}/west/telegram-bot:latest,
${{ secrets.REGISTRY_URL }}/west/telegram-bot:${{ steps.commit_sha.outputs.sha_short }}
\ No newline at end of file
diff --git a/docker/Dockerfile b/docker/Dockerfile
new file mode 100644
index 0000000..2e7b9a7
--- /dev/null
+++ b/docker/Dockerfile
@@ -0,0 +1,44 @@
+# Build a project
+FROM mcr.microsoft.com/dotnet/sdk:6.0.101-alpine3.14 AS build
+WORKDIR /source
+
+# Copy project and perform restoring
+COPY Kruzya.TelegramBot.sln ./
+COPY ./Core/*.csproj ./Core/
+COPY ./tests/*.csproj ./tests/
+COPY ./modules/CombotAntiSpam/*.csproj ./modules/CombotAntiSpam/
+COPY ./modules/Destiny2.WhereIsXur/*.csproj ./modules/Destiny2.WhereIsXur/
+COPY ./modules/RichSiteSummary/*.csproj ./modules/RichSiteSummary/
+COPY ./modules/UrlLimitations/*.csproj ./modules/UrlLimitations/
+COPY ./modules/ChatManagement/*.csproj ./modules/ChatManagement/
+COPY ./modules/Entertainment/*.csproj ./modules/Entertainment/
+COPY ./modules/UserGroupTag/*.csproj ./modules/UserGroupTag/
+RUN dotnet restore Kruzya.TelegramBot.sln
+
+# Copy all project files
+COPY . .
+RUN dotnet publish -c release -o /app --no-restore Kruzya.TelegramBot.sln && \
+ mkdir /app/modules && \
+ cp /app/TelegramBot.*.dll /app/modules/ && \
+ rm -f /app/TelegramBot.*.dll /app/TelegramBot.*.pdb
+
+# Now reuse image with only runtime
+FROM mcr.microsoft.com/dotnet/aspnet:6.0.101-alpine3.14
+WORKDIR /user
+COPY --from=build /app /app
+
+ENV MUSL_LOCPATH /usr/share/i18n/locales/musl
+ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false
+
+RUN apk add --no-cache cmake make musl-dev gcc gettext-dev libintl icu-libs \
+ && wget https://gitlab.com/rilian-la-te/musl-locales/-/archive/master/musl-locales-master.zip \
+ && unzip musl-locales-master.zip \
+ && cd musl-locales-master \
+ && cmake -DLOCALE_PROFILE=OFF -D CMAKE_INSTALL_PREFIX:PATH=/usr . && make && make install \
+ && cd .. && rm -r musl-locales-master
+
+ENV LANG ru_RU.UTF-8
+ENV LANGUAGE ru_RU.UTF-8
+ENV LC_ALL ru_RU.UTF-8
+
+ENTRYPOINT ["dotnet", "/app/TelegramBot.dll"]
diff --git a/docker/Dockerfile.amd64 b/docker/Dockerfile.amd64
index d8ae3d8..58aea98 100644
--- a/docker/Dockerfile.amd64
+++ b/docker/Dockerfile.amd64
@@ -1,5 +1,5 @@
# Build a project
-FROM mcr.microsoft.com/dotnet/sdk:6.0.1-alpine3.14-amd64 AS build
+FROM mcr.microsoft.com/dotnet/sdk:6.0.101-alpine3.14-amd64 AS build
WORKDIR /source
# Copy project and perform restoring
@@ -23,7 +23,7 @@ RUN dotnet publish -c release -o /app --no-restore Kruzya.TelegramBot.sln && \
rm -f /app/TelegramBot.*.dll /app/TelegramBot.*.pdb
# Now reuse image with only runtime
-FROM mcr.microsoft.com/dotnet/aspnet:6.0.1-alpine3.14-amd64
+FROM mcr.microsoft.com/dotnet/aspnet:6.0.101-alpine3.14-amd64
WORKDIR /user
COPY --from=build /app /app
diff --git a/docker/Dockerfile.arm64 b/docker/Dockerfile.arm64
index 5499b48..25c42fe 100644
--- a/docker/Dockerfile.arm64
+++ b/docker/Dockerfile.arm64
@@ -1,5 +1,5 @@
# Build a project
-FROM mcr.microsoft.com/dotnet/sdk:6.0.1-alpine3.14-arm64v8 AS build
+FROM mcr.microsoft.com/dotnet/sdk:6.0.101-alpine3.14-arm64v8 AS build
WORKDIR /source
# Copy project and perform restoring
@@ -23,7 +23,7 @@ RUN dotnet publish -c release -o /app --no-restore Kruzya.TelegramBot.sln && \
rm -f /app/TelegramBot.*.dll /app/TelegramBot.*.pdb
# Now reuse image with only runtime
-FROM mcr.microsoft.com/dotnet/aspnet:6.0.1-alpine3.14-arm64v8
+FROM mcr.microsoft.com/dotnet/aspnet:6.0.101-alpine3.14-arm64v8
WORKDIR /user
COPY --from=build /app /app
From 3dbd5e261f82ced2744214f6dabbf0062e1ce54a Mon Sep 17 00:00:00 2001
From: West14 <30056636+West14@users.noreply.github.com>
Date: Mon, 10 Jan 2022 01:02:43 +0200
Subject: [PATCH 4/6] [ci] fix Dockerfile name in worklflow
---
.github/workflows/build-image.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/build-image.yml b/.github/workflows/build-image.yml
index 3e48a06..fccd3ba 100644
--- a/.github/workflows/build-image.yml
+++ b/.github/workflows/build-image.yml
@@ -34,7 +34,7 @@ jobs:
uses: docker/build-push-action@v2
with:
context: .
- file: docker/Dockerfile.${{ matrix.arch }}
+ file: docker/Dockerfile
platforms: linux/amd64,linux/arm64
push: ${{ github.ref == 'refs/heads/dev' }}
tags: ${{ secrets.REGISTRY_URL }}/west/telegram-bot:latest,
From dbd4b73a324c7a62e9dd9d0a3b2de67184dd8b4b Mon Sep 17 00:00:00 2001
From: West14 <30056636+West14@users.noreply.github.com>
Date: Mon, 10 Jan 2022 01:05:02 +0200
Subject: [PATCH 5/6] [ci] fix runtime image name
---
docker/Dockerfile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 2e7b9a7..7877b99 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -23,7 +23,7 @@ RUN dotnet publish -c release -o /app --no-restore Kruzya.TelegramBot.sln && \
rm -f /app/TelegramBot.*.dll /app/TelegramBot.*.pdb
# Now reuse image with only runtime
-FROM mcr.microsoft.com/dotnet/aspnet:6.0.101-alpine3.14
+FROM mcr.microsoft.com/dotnet/aspnet:6.0.1-alpine3.14
WORKDIR /user
COPY --from=build /app /app
From a9deb529538cfea7b1c3fa252603c309596a7835 Mon Sep 17 00:00:00 2001
From: West14 <30056636+West14@users.noreply.github.com>
Date: Mon, 10 Jan 2022 01:16:46 +0200
Subject: [PATCH 6/6] Remove separate Dockerfiles.
---
.github/workflows/build-image.yml | 2 --
docker/Dockerfile => Dockerfile | 0
docker/Dockerfile.amd64 | 44 -------------------------------
docker/Dockerfile.arm64 | 44 -------------------------------
4 files changed, 90 deletions(-)
rename docker/Dockerfile => Dockerfile (100%)
delete mode 100644 docker/Dockerfile.amd64
delete mode 100644 docker/Dockerfile.arm64
diff --git a/.github/workflows/build-image.yml b/.github/workflows/build-image.yml
index fccd3ba..c66de99 100644
--- a/.github/workflows/build-image.yml
+++ b/.github/workflows/build-image.yml
@@ -33,8 +33,6 @@ jobs:
name: Build and push
uses: docker/build-push-action@v2
with:
- context: .
- file: docker/Dockerfile
platforms: linux/amd64,linux/arm64
push: ${{ github.ref == 'refs/heads/dev' }}
tags: ${{ secrets.REGISTRY_URL }}/west/telegram-bot:latest,
diff --git a/docker/Dockerfile b/Dockerfile
similarity index 100%
rename from docker/Dockerfile
rename to Dockerfile
diff --git a/docker/Dockerfile.amd64 b/docker/Dockerfile.amd64
deleted file mode 100644
index 58aea98..0000000
--- a/docker/Dockerfile.amd64
+++ /dev/null
@@ -1,44 +0,0 @@
-# Build a project
-FROM mcr.microsoft.com/dotnet/sdk:6.0.101-alpine3.14-amd64 AS build
-WORKDIR /source
-
-# Copy project and perform restoring
-COPY Kruzya.TelegramBot.sln ./
-COPY ./Core/*.csproj ./Core/
-COPY ./tests/*.csproj ./tests/
-COPY ./modules/CombotAntiSpam/*.csproj ./modules/CombotAntiSpam/
-COPY ./modules/Destiny2.WhereIsXur/*.csproj ./modules/Destiny2.WhereIsXur/
-COPY ./modules/RichSiteSummary/*.csproj ./modules/RichSiteSummary/
-COPY ./modules/UrlLimitations/*.csproj ./modules/UrlLimitations/
-COPY ./modules/ChatManagement/*.csproj ./modules/ChatManagement/
-COPY ./modules/Entertainment/*.csproj ./modules/Entertainment/
-COPY ./modules/UserGroupTag/*.csproj ./modules/UserGroupTag/
-RUN dotnet restore Kruzya.TelegramBot.sln
-
-# Copy all project files
-COPY . .
-RUN dotnet publish -c release -o /app --no-restore Kruzya.TelegramBot.sln && \
- mkdir /app/modules && \
- cp /app/TelegramBot.*.dll /app/modules/ && \
- rm -f /app/TelegramBot.*.dll /app/TelegramBot.*.pdb
-
-# Now reuse image with only runtime
-FROM mcr.microsoft.com/dotnet/aspnet:6.0.101-alpine3.14-amd64
-WORKDIR /user
-COPY --from=build /app /app
-
-ENV MUSL_LOCPATH /usr/share/i18n/locales/musl
-ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false
-
-RUN apk add --no-cache cmake make musl-dev gcc gettext-dev libintl icu-libs \
- && wget https://gitlab.com/rilian-la-te/musl-locales/-/archive/master/musl-locales-master.zip \
- && unzip musl-locales-master.zip \
- && cd musl-locales-master \
- && cmake -DLOCALE_PROFILE=OFF -D CMAKE_INSTALL_PREFIX:PATH=/usr . && make && make install \
- && cd .. && rm -r musl-locales-master
-
-ENV LANG ru_RU.UTF-8
-ENV LANGUAGE ru_RU.UTF-8
-ENV LC_ALL ru_RU.UTF-8
-
-ENTRYPOINT ["dotnet", "/app/TelegramBot.dll"]
diff --git a/docker/Dockerfile.arm64 b/docker/Dockerfile.arm64
deleted file mode 100644
index 25c42fe..0000000
--- a/docker/Dockerfile.arm64
+++ /dev/null
@@ -1,44 +0,0 @@
-# Build a project
-FROM mcr.microsoft.com/dotnet/sdk:6.0.101-alpine3.14-arm64v8 AS build
-WORKDIR /source
-
-# Copy project and perform restoring
-COPY Kruzya.TelegramBot.sln ./
-COPY ./Core/*.csproj ./Core/
-COPY ./tests/*.csproj ./tests/
-COPY ./modules/CombotAntiSpam/*.csproj ./modules/CombotAntiSpam/
-COPY ./modules/Destiny2.WhereIsXur/*.csproj ./modules/Destiny2.WhereIsXur/
-COPY ./modules/RichSiteSummary/*.csproj ./modules/RichSiteSummary/
-COPY ./modules/UrlLimitations/*.csproj ./modules/UrlLimitations/
-COPY ./modules/ChatManagement/*.csproj ./modules/ChatManagement/
-COPY ./modules/Entertainment/*.csproj ./modules/Entertainment/
-COPY ./modules/UserGroupTag/*.csproj ./modules/UserGroupTag/
-RUN dotnet restore Kruzya.TelegramBot.sln
-
-# Copy all project files
-COPY . .
-RUN dotnet publish -c release -o /app --no-restore Kruzya.TelegramBot.sln && \
- mkdir /app/modules && \
- cp /app/TelegramBot.*.dll /app/modules/ && \
- rm -f /app/TelegramBot.*.dll /app/TelegramBot.*.pdb
-
-# Now reuse image with only runtime
-FROM mcr.microsoft.com/dotnet/aspnet:6.0.101-alpine3.14-arm64v8
-WORKDIR /user
-COPY --from=build /app /app
-
-ENV MUSL_LOCPATH /usr/share/i18n/locales/musl
-ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false
-
-RUN apk add --no-cache cmake make musl-dev gcc gettext-dev libintl icu-libs \
- && wget https://gitlab.com/rilian-la-te/musl-locales/-/archive/master/musl-locales-master.zip \
- && unzip musl-locales-master.zip \
- && cd musl-locales-master \
- && cmake -DLOCALE_PROFILE=OFF -D CMAKE_INSTALL_PREFIX:PATH=/usr . && make && make install \
- && cd .. && rm -r musl-locales-master
-
-ENV LANG ru_RU.UTF-8
-ENV LANGUAGE ru_RU.UTF-8
-ENV LC_ALL ru_RU.UTF-8
-
-ENTRYPOINT ["dotnet", "/app/TelegramBot.dll"]