Konfiguracja IronOCR w kontenerach Docker

This article was translated from English: Does it need improvement?
Translated
View the article in English

Chcesz przetwarzać obrazy lub pliki Pdf w C# za pomocą OCR?

IronOCR teraz w pełni obsługuje Docker, w tym kontenery Docker na platformie Azure dla systemów Linux i Windows.

Docker Linux AWS Windows

Dłączego warto korzystać z Docker?

Docker umożliwia programistom łatwe pakowanie, dostarczanie i uruchamianie dowolnej aplikacji jako lekkiego, przenośnego i samowystarczalnego kontenera, który może działać praktycznie wszędzie.

IronOCR i wprowadzenie do Linuxa

Jeśli Docker z .NET jest dla Ciebie nowością, polecamy doskonały artykuł o konfigurowaniu debugowania Docker i integracji z projektami Visual Studio. https://docs.microsoft.com/en-us/visualstudio/containers/edit-and-refresh?view=vs-2019

Zalecamy również przeczytanie naszego Przewodnika po konfiguracji i zgodności IronOCR z Linuxem.

Zalecane dystrybucje Linux Docker

Zalecamy najnowsze 64-bitowe systemy Linux, wymienione poniżej, dla 'łatwej konfiguracji' IronPDF.

  • Ubuntu 20
  • Ubuntu 18
  • Debian 11
  • Debian 10 [Obecnie domyślna dystrybucja Linux Microsoft Azure]

Polecamy użycie Oficjalnych Obrazów Docker Microsoft. Inne dystrybucje Linuksa są częściowo obsługiwane, ale mogą wymagać ręcznej konfiguracji przy użyciu apt-get. Zobacz nasz przewodnik "Ręczna konfiguracja Linuxa".

Działające pliki Docker dla Ubuntu i Debian są zawarte w tym dokumencie:

Podstawy instalacji IronOCR na Dockerze w Linuxie

Skorzystaj z naszego pakietu NuGet

Zalecamy użycie pakietu NuGet IronOCR. Działa podczas tworzenia aplikacji na Windows, macOS i Linux.

Install-Package IronOcr

Pliki Docker dla Linux Ubuntu

Docker Linux Ubuntu

Ubuntu 20 z .NET 5

# Use the base runtime image for Ubuntu 20 with .NET runtime
FROM mcr.microsoft.com/dotnet/runtime:5.0-focal AS base
WORKDIR /app

# Install necessary packages
RUN apt-get update && apt-get install -y apt-utils libgdiplus libc6-dev

# Use the base development image for Ubuntu 20 with .NET SDK
FROM mcr.microsoft.com/dotnet/sdk:5.0-focal AS build
WORKDIR /src

# Restore NuGet packages
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"

# Build the project
COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build

# Publish the project
FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish

# Run the application
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]

Ubuntu 20 z .NET 3.1 LTS

# Use the base runtime image for Ubuntu 20 with .NET runtime
FROM mcr.microsoft.com/dotnet/runtime:3.1-focal AS base
WORKDIR /app

# Install necessary packages
RUN apt-get update && apt-get install -y apt-utils libgdiplus libc6-dev

# Use the base development image for Ubuntu 20 with .NET SDK
FROM mcr.microsoft.com/dotnet/sdk:3.1-focal AS build
WORKDIR /src

# Restore NuGet packages
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"

# Build the project
COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build

# Publish the project
FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish

# Run the application
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]

Ubuntu 18 z .NET 3.1 LTS

# Use the base runtime image for Ubuntu 18 with .NET runtime
FROM mcr.microsoft.com/dotnet/runtime:3.1-bionic AS base
WORKDIR /app

# Install necessary packages
RUN apt-get update && apt-get install -y apt-utils libgdiplus libc6-dev

# Use the base development image for Ubuntu 18 with .NET SDK
FROM mcr.microsoft.com/dotnet/sdk:3.1-bionic AS build
WORKDIR /src

# Restore NuGet packages
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"

# Build the project
COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build

# Publish the project
FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish

# Run the application
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]

Pliki Docker dla Debian Linux

Docker Linux Debian

Debian 11 z .NET 5

# Use the base runtime image for Debian 10 with .NET runtime
FROM mcr.microsoft.com/dotnet/aspnet:5.0-bullseye-slim AS base
WORKDIR /app

# Install necessary packages
RUN apt-get update && apt-get install -y apt-utils libgdiplus libc6-dev

# Use the base development image for Debian 10 with .NET SDK
FROM mcr.microsoft.com/dotnet/sdk:5.0-bullseye-slim AS build
WORKDIR /src

# Restore NuGet packages
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"

# Build the project
COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build

# Publish the project
FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish

# Run the application
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]

Debian 11 z .NET 3.1 LTS

# Use the base runtime image for Debian 10 with .NET runtime
FROM mcr.microsoft.com/dotnet/aspnet:3.1-bullseye-slim AS base
WORKDIR /app

# Install necessary packages
RUN apt-get update && apt-get install -y apt-utils libgdiplus libc6-dev

# Use the base development image for Debian 10 with .NET SDK
FROM mcr.microsoft.com/dotnet/sdk:3.1-bullseye-slim AS build
WORKDIR /src

# Restore NuGet packages
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"

# Build the project
COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build

# Publish the project
FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish

# Run the application
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]

Debian 10 z .NET 5

# Use the base runtime image for Debian 10 with .NET runtime
FROM mcr.microsoft.com/dotnet/runtime:5.0 AS base
WORKDIR /app

# Install necessary packages
RUN apt-get update && apt-get install -y apt-utils libgdiplus libc6-dev

# Use the base development image for Debian 10 with .NET SDK
FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
WORKDIR /src

# Restore NuGet packages
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"

# Build the project
COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build

# Publish the project
FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish

# Run the application
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]

Debian 10 z .NET 3.1 LTS

# Use the base runtime image for Debian 10 with .NET runtime
FROM mcr.microsoft.com/dotnet/runtime:3.1 AS base
WORKDIR /app

# Install necessary packages
RUN apt-get update && apt-get install -y apt-utils libgdiplus libc6-dev

# Use the base development image for Debian 10 with .NET SDK
FROM mcr.microsoft.com/dotnet/sdk:3.1 AS build
WORKDIR /src

# Restore NuGet packages
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"

# Build the project
COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build

# Publish the project
FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish

# Run the application
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]

Często Zadawane Pytania

Jak mogę wdrożyć aplikacje OCR w C# w kontenerach Docker?

Możesz wdrożyć aplikacje OCR w C# w kontenerach Docker używając IronOCR, biblioteki OCR w C# integrującej się z Docker. Musisz skonfigurować kontenery Docker z niezbędnymi pakietami, takimi jak apt-utils, libgdiplus i libc6-dev, i używać oficjalnych obrazów Docker firmy Microsoft dla optymalnej wydajności.

Które systemy operacyjne są najlepsze do uruchamiania IronOCR w Docker?

Do uruchamiania IronOCR w Docker zaleca się użycie najnowszych 64-bitowych dystrybucji Linux takich jak Ubuntu 20, Ubuntu 18, Debian 11 i Debian 10, ponieważ oferują łatwą konfigurację i wsparcie.

Jak skonfigurować IronOCR na kontenerach Docker w Azure?

Aby skonfigurować IronOCR na kontenerach Docker w Azure, należy postępować według tych samych kroków, co dla innych środowisk Docker. Użyj pakietu NuGet IronOcr, skonfiguruj rekomendowane dystrybucje Linux i upewnij się, że wszystkie niezbędne zależności są uwzględnione w twoim Dockerfile.

Jakie są kroki konfiguracji IronOCR w Dockerze używając .NET 5?

Aby skonfigurować IronOCR w Dockerze używając .NET 5, musisz stworzyć Dockerfile, który instaluje pakiet NuGet IronOcr, dodaje wymagane pakiety takie jak apt-utils i libgdiplus, i używa oficjalnych obrazów Docker .NET 5 firmy Microsoft jako obrazu bazowego.

Czy IronOCR może być używany w środowiskach Docker na Windows?

Tak, IronOCR może być używany w środowiskach Docker na Windows. Proces obejmuje użycie pakietu NuGet IronOcr i skonfigurowanie Dockerfile do uwzględnienia niezbędnych zależności i konfiguracji specyficznych dla systemów operacyjnych Windows.

Jakie są korzyści z użycia Docker do hostowania aplikacji OCR .NET?

Użycie Docker do hostowania aplikacji OCR .NET umożliwia łatwe wdrożenie, lepsze zarządzanie zasobami i większą przenośność w różnych środowiskach. Kontenery Docker są samowystarczalne, co zapewnia, że aplikacje działają w sposób spójny, niezależnie od miejsca wdrożenia.

Czy wymagana jest ręczna konfiguracja dla nierekomendowanych dystrybucji Linux w Docker?

Tak, jeśli używasz innych dystrybucji Linux niż rekomendowane (Ubuntu 20, Ubuntu 18, Debian 11, Debian 10), może być konieczna ręczna konfiguracja za pomocą apt-get. Przewodnik po ręcznej konfiguracji jest dostępny w przewodniku 'Linux Manual Setup' dostarczonym przez IronOCR.

Czy IronOCR oferuje jakieś funkcje przetwarzania wstępnego obrazów?

IronOCR zawiera funkcje przetwarzania wstępnego obrazów, aby zwiększyć dokładność OCR, takie jak redukcja szumów, korekcja rotacji i dostosowanie kontrastu.

Czy IronOCR może być używany w aplikacjach chmury?

Istotnie, IronOCR może być wdrożony w środowiskach chmurowych, co czyni go odpowiednim dla aplikacji webowych i usług wymagających funkcji OCR.

Jak mogę poprawić dokładność wyników OCR z IronOCR?

Aby poprawić dokładność OCR w IronOCR, zapewnij wysokiej jakości obrazy wejściowe, używaj odpowiednich pakietów językowych i wykorzystuj funkcje przetwarzania wstępnego obrazów biblioteki.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 5,896,332 | Wersja: 2026.5 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronOcr
uruchom próbkę obserwuj, jak twój obraz staje się tekstem z możliwością wyszukiwania.