Docker Konteynerlerinde IronWord Kurulumu
IronWord, hem Linux hem de Windows ortamlarında Docker konteynerlerinde tam destek sağlar, bu da onu Azure, AWS veya .NET'e hazır herhangi bir sunucuya dağıtmak için ideal kılar.
Docker Neden Kullanılmalı?
Docker, IronWord'u hafif, kendinden bağımsız bir konteyner olarak paketleyip çalıştırmanıza olanak tanır. Bu, geliştirme, test ve üretim arasında tutarlı bir davranış sağlar - özellikle programlı olarak Word belgeleri oluşturup işleri yaparken değerli.
IronWord, .NET 5-9, .NET Standard (2.x, 3.x) ve .NET Framework 4.6.2+ destekler, bunların hepsi Linux ve Windows üzerinde Docker'da sorunsuz çalışır.
Tavsiye Edilen Linux Docker Dağıtımları
IronWord'un düzgün çalışması için aşağıdaki 64-bit Linux dağıtımlarını öneriyoruz:
- Ubuntu 22.04+ (Jammy)
- Ubuntu 20.04 (Focal)
- Debian 11+ (Bullseye)
- CentOS 7+
.NET çalışma zamanı ve SDK ile birlikte Microsoft'un resmi Docker görüntülerini kullanarak kurulum ve bağımlılık yönetimini basitleştirin.
IronWord NuGet Paketi
IronWord, herhangi bir .NET projesine NuGet paketi üzerinden kolayca eklenebilir. NuGet Paket Yöneticisi Konsolu'nda aşağıdaki komutu çalıştırmanız yeterlidir ve kütüphane otomatik olarak eklenecektir:
Install-Package IronWord
Ubuntu Dockerfile Örnekleri
Ubuntu22 + .NET8
FROM mcr.microsoft.com/dotnet/runtime:8.0-jammy AS base
WORKDIR /app
FROM mcr.microsoft.com/dotnet/sdk:8.0-jammy AS build
WORKDIR /src
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"
COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]
Ubuntu20.04 + .NET6 (LTS)
FROM mcr.microsoft.com/dotnet/runtime:6.0-focal AS base
WORKDIR /app
FROM mcr.microsoft.com/dotnet/sdk:6.0-focal AS build
WORKDIR /src
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"
COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]
Debian Dockerfile Örneği
Debian11 + .NET7
FROM mcr.microsoft.com/dotnet/aspnet:7.0-bullseye-slim AS base
WORKDIR /app
FROM mcr.microsoft.com/dotnet/sdk:7.0-bullseye-slim AS build
WORKDIR /src
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"
COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]
CentOS 7
IronWord uyumluluğu için mcr.microsoft.com/dotnet/runtime:6.0-centos7 gibi CentOS tabanlı .NET çalıştırma ortamlarını kullanın.
# Yapı aşaması
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
WORKDIR /app
COPY ./Example/Example.csproj ./Example/
RUN dotnet restore "./Example/Example.csproj"
COPY ./Example ./Example/
WORKDIR /app/Example
RUN dotnet publish -c Release -o /out
# Çalışma zamanı aşaması - CentOS 7
FROM mcr.microsoft.com/dotnet/runtime:6.0-centos7 AS runtime
WORKDIR /app
RUN yum install -y liberation-fonts && yum clean all
COPY --from=build /out ./
ENTRYPOINT ["dotnet", "Example.dll"]
Notlar ve Sorun Giderme
- IronWord, .NET5–9, .NET Standard (2.x, 3.x) ve .NET Framework 4.6.2+ tam olarak destekler.
- Eğer gerekli ise fontları yükleyin (örn. fonts-liberation, ttf-mscorefonts-installer) Linux konteynerlerinde düzgün render için.
Sıkça Sorulan Sorular
IronWord nedir ve neden bir Docker konteynerinde kullanmalısınız?
IronWord, .NET uygulamalarında Word belgeleriyle çalışmak için bir kütüphanedir. Bir Docker konteynerinde kullanmak, hem Linux hem de Windows üzerinde geliştirme, test ve üretim ortamlarında tutarlı davranış sağlar.
Docker'da IronWord çalıştırmak için hangi Linux dağıtımları önerilir?
IronWord, Ubuntu 22.04+ (Jammy), Ubuntu 20.04 (Focal), Debian 11+ (Bullseye) ve CentOS 7+ gibi 64-bit Linux dağıtımlarında sorunsuz çalışır.
IronWord'u bir .NET projesine NuGet kullanarak nasıl eklerim?
IronWord, NuGet Paket Yöneticisi Konsolunda yükleme komutunu çalıştırarak bir .NET projesine eklenebilir, bu da kütüphaneyi otomatik olarak projenize dahil eder.
Microsoft'un resmi Docker görüntülerini IronWord için kullanmanın faydası nedir?
Microsoft'un .NET çalıştırma zamanı ve SDK içeren resmi Docker görüntülerini kullanmak, kurulum ve bağımlılık yönetimini basitleştirir ve IronWord ile sorunsuz bir entegrasyon sağlar.
Ubuntu'da IronWord kurulumunu sağlamak için bazı örnek Docker dosyaları nelerdir?
Sayfa, temel görüntünün kurulumundan uygulamanın çalıştırılmasına kadar olan adımları detaylandıran .NET 8 ile Ubuntu 22 ve .NET 6 ile Ubuntu 20.04 için Dockerfile örnekleri sağlar.
Debian üzerinde Docker kullanarak IronWord nasıl kurabilirim?
.NET 7 ile Debian 11 için sağlanan bir örnek Dockerfile, bir Docker konteynerinde IronWord uygulamasının oluşturulup dağıtılması için gereken adımları içerir.
IronWord için Linux konteynerlerinde ek fontların yüklenmesi gerekiyor mu?
Evet, Linux konteynerlerinde IronWord kullanırken belgelerin doğru işlenmesi için fonts-liberation veya ttf-mscorefonts-installer gibi fontların yüklenmesi gerekebilir.
IronWord, .NET'in tüm sürümlerini destekliyor mu?
IronWord, farklı .NET uygulama sürümleri için çok yönlülük sağlayarak .NET 5-9, .NET Standard (2.x, 3.x) ve .NET Framework 4.6.2+'yı destekler.
IronWord uygulamasını CentOS 7'ye dağıtmak için adımlar nelerdir?
Sayfa, .NET 6 çalıştırma zamanı kullanarak gerekli fontları yükleme ve IronWord uygulamalarını çalıştırmak için ortamı ayarlamayı içeren CentOS 7 için bir Dockerfile sunar.
IronWord uygulamalarını dağıtmak için neden Docker'ı tercih etmeliyim?
Docker, IronWord uygulamalarının hafif ve kendi kendine yeten bir ortam sağlamasını, uygulama geliştirme ve dağıtımının farklı aşamalarında tutarlı performans sağlamasını garantiler.

