Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Microservices, in combinatie met containerisatie maken het mogelijk om technologieën eenvoudig te combineren. Docker kunt u gemakkelijk integreren Aspose.Words functionaliteit in uw toepassing, ongeacht welke technologie zich in uw ontwikkelstack bevindt.
In het geval dat u zich richt op microservices, of als de belangrijkste technologie in uw stack is niet .NET, C++ of Java, maar je moet Aspose.Words functionaliteit, of als u al gebruik Docker in uw stack, dan kunt u geïnteresseerd zijn in het gebruik Aspose.Words in een Docker container.
Docker moet zijn geïnstalleerd op uw systeem. Voor informatie over hoe te installeren Docker op Windows of Mac, verwijzen naar de links in de sectie “Zie ook.”
Merk ook op dat Visual Studio 2017, .NET Core 2.2 SDK wordt gebruikt in het onderstaande voorbeeld.
In dit voorbeeld, maakt u een eenvoudige Hello World console applicatie die een document maakt van Hallo World! De toepassing kan dan worden ingebouwd en uitgevoerd in Docker.
Om het Hello World programma te maken, volg onderstaande stappen:
SkiaSharp.NativeAssets.Linux.Merk op dat de map “TestOut” is opgegeven als een uitvoermap voor het opslaan van uitvoerdocumenten. Bij het uitvoeren van de toepassing in Docker een map op de host machine zal worden gekoppeld aan deze map in de container. Dit zal u in staat stellen om gemakkelijk de uitvoer gegenereerd door Aspose.Words in de Docker container.
De volgende stap is om de Dockerfile.
FROM mcr.microsoft.com/dotnet/core/sdk:2.2
WORKDIR /app
RUN apt-get update && apt-get install -y libfontconfig1
COPY . ./
RUN dotnet publish -c Release -o out
ENTRYPOINT ["dotnet", "Aspose.Words.Docker.Sample/out/Aspose.Words.Docker.Sample.dll"]Het bovenstaande is eenvoudig Dockerfile, die de volgende instructies bevat:
Nu kan de toepassing worden ingebouwd en uitgevoerd in Docker. Open uw favoriete opdrachtprompt, verander directory naar de map met de toepassing (map waar de oplossing bestand en de Dockerfile worden geplaatst) en voer het volgende commando uit:
docker build -t awtest .De eerste keer dat dit commando wordt uitgevoerd kan het langer duren, omdat Docker moet de vereiste afbeeldingen te downloaden. Zodra het vorige commando is voltooid, voer dan het volgende commando uit:
docker run --mount type=bind,source=C:\Temp,target=/TestOut --rm awtest from DockerAspose.Words is beschikbaar voor beide .NET Framework en .NET Core. De .NET Core afbeeldingen zijn veel kleiner in grootte dan .NET Framework beelden, die de .NET Core de betere keuze voor het creëren van microdiensten en voor gebruik in containers. Het is mogelijk om apps te implementeren om Linux Docker containers (voor inzet op platforms), die lichter zijn dan Windows containers.
Officiële afbeeldingen voor de .NET Core SDK zijn voorzien in:
Om te werken met graphics, Aspose.Words voor .NET Standard hangt af van SkiaSharp. Dit beperkt de afbeeldingen Aspose.Words kan worden uitgevoerd op het volgende:
SkiaSharp werkt niet op Windows Nano Server als gevolg van een gebrek aan inheemse afhankelijkheden, wat een bekend probleem is in SkiaSharp. Het probleem zal worden opgelost in 1.68.1.1 versie van SkiaSharp. Als je moet rennen Aspose.Words in een Windows container, gebruik de .NET Framework basis afbeelding met de .NET Framework versie van Aspose.Words, die niet afhankelijk is van SkiaSharp.
SkiaSharp is een wikkelaar rond de native Skia bibliotheek. De volgende looptijden zijn voorzien in de SkiaSharp NuGet pakket:
Om het in te voeren Linux, u moet extra NuGet pakketten met de bijbehorende inheemse activa, zoals de oorspronkelijke bouw van Skia bibliotheek, hieronder vermeld:
FROM mcr.microsoft.com/dotnet/core/sdk:2.2 AS build
WORKDIR /app
\# copy csproj and restore as distinct layers
COPY Aspose.Words.Docker.Sample/*.csproj ./Aspose.Words.Docker.Sample/
WORKDIR /app/Aspose.Words.Docker.Sample
RUN dotnet restore
\# copy and publish app and libraries
WORKDIR /app/
COPY Aspose.Words.Docker.Sample/. ./Aspose.Words.Docker.Sample/
WORKDIR /app/Aspose.Words.Docker.Sample
RUN dotnet publish -c Release -o out
\# copy to runtime environment
FROM mcr.microsoft.com/dotnet/core/runtime:2.2 AS runtime
WORKDIR /app
\# libfontconfig1 is required to properly work with fonts in Linux.
RUN apt-get update && apt-get install -y libfontconfig1
RUN apt install libharfbuzz-icu0
COPY --from=build /app/Aspose.Words.Docker.Sample/out ./
ENTRYPOINT ["dotnet", "Aspose.Words.Docker.Sample.dll"]FROM mcr.microsoft.com/dotnet/core/sdk:2.2-bionic AS build
WORKDIR /app
\# copy csproj and restore as distinct layers
COPY Aspose.Words.Docker.Sample/*.csproj ./Aspose.Words.Docker.Sample/
WORKDIR /app/Aspose.Words.Docker.Sample
RUN dotnet restore
\# copy and publish app and libraries
WORKDIR /app/
COPY Aspose.Words.Docker.Sample/. ./Aspose.Words.Docker.Sample/
WORKDIR /app/Aspose.Words.Docker.Sample
RUN dotnet publish -c Release -o out
\# copy to runtime environment
FROM mcr.microsoft.com/dotnet/core/runtime:2.2-bionic AS runtime
WORKDIR /app
\# libfontconfig1 is required to properly work with fonts in Linux.
RUN apt-get update && apt-get install -y libfontconfig1
RUN apt install libharfbuzz-icu0
COPY --from=build /app/Aspose.Words.Docker.Sample/out ./
ENTRYPOINT ["dotnet", "Aspose.Words.Docker.Sample.dll"]FROM mcr.microsoft.com/dotnet/core/sdk:2.2-alpine3.9 AS build
WORKDIR /app
\# copy csproj and restore as distinct layers
COPY Aspose.Words.Docker.Sample/*.csproj ./Aspose.Words.Docker.Sample/
WORKDIR /app/Aspose.Words.Docker.Sample
RUN dotnet restore
\# copy and publish app and libraries
WORKDIR /app/
COPY Aspose.Words.Docker.Sample/. ./Aspose.Words.Docker.Sample/
WORKDIR /app/Aspose.Words.Docker.Sample
RUN dotnet publish -c Release -o out
\# copy to runtime environment
FROM mcr.microsoft.com/dotnet/core/runtime:2.2-alpine3.9 AS runtime
WORKDIR /app
\# fontconfig is required to properly work with fonts in Linux.
RUN apk update && apk upgrade && apk add fontconfig && apk add harfbuzz
COPY --from=build /app/Aspose.Words.Docker.Sample/out ./
ENTRYPOINT ["dotnet", "Aspose.Words.Docker.Sample.dll"]FROM mcr.microsoft.com/dotnet/core/sdk:2.1 AS build
WORKDIR /app
\# copy csproj and restore as distinct layers
COPY Aspose.Words.Docker.Sample/*.csproj ./Aspose.Words.Docker.Sample/
WORKDIR /app/Aspose.Words.Docker.Sample
RUN dotnet restore
\# copy and publish app and libraries
WORKDIR /app/
COPY Aspose.Words.Docker.Sample/. ./Aspose.Words.Docker.Sample/
WORKDIR /app/Aspose.Words.Docker.Sample
RUN dotnet publish -c Release -o out
\# copy to runtime environment
FROM kkamberta/dotnet-21-rhel7 AS runtime
WORKDIR /app
COPY --from=build /app/Aspose.Words.Docker.Sample/out ./
ENTRYPOINT ["/opt/rh/rh-dotnet21/root/usr/bin/dotnet", "Aspose.Words.Docker.Sample.dll"]Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.