Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Les microservices, associés à la conteneurisation, permettent de combiner facilement les technologies. Docker vous permet d’intégrer facilement la fonctionnalité Aspose.Words dans votre application, quelle que soit la technologie présente dans votre pile de développement.
Si vous ciblez des microservices, ou si la technologie principale de votre pile n’est pas .NET, C++ ou Java, mais que vous avez besoin de la fonctionnalité Aspose.Words, ou si vous utilisez déjà Docker dans votre pile, vous pourriez être intéressé par l’utilisation de Aspose.Words dans un Docker. récipient.
Docker doit être installé sur votre système. Pour plus d’informations sur la façon d’installer Docker sur Windows ou Mac, reportez-vous aux liens dans la section “Voir aussi”.
Notez également que Visual Studio 2017, .NET Core 2.2 SDK est utilisé dans l’exemple fourni ci-dessous.
Dans cet exemple, vous créez une simple application console Hello World qui crée un message “Hello World!” document et l’enregistre dans tous les formats de sauvegarde pris en charge. L’application peut ensuite être créée et exécutée dans Docker.
Pour créer le programme Hello World, suivez les étapes ci-dessous:
SkiaSharp.NativeAssets.Linux.Notez que le dossier “TestOut” est spécifié comme dossier de sortie pour enregistrer les documents de sortie. Lors de l’exécution de l’application dans Docker, un dossier sur la machine hôte sera monté dans ce dossier dans le conteneur. Cela vous permettra de visualiser facilement la sortie générée par Aspose.Words dans le conteneur Docker.
L’étape suivante consiste à créer et configurer le 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"]Ce qui précède est un simple Dockerfile, qui contient les instructions suivantes:
L’application peut désormais être créée et exécutée dans Docker. Ouvrez votre invite de commande préférée, accédez au dossier contenant l’application (dossier où sont placés le fichier de solution et le Dockerfile) et exécutez la commande suivante:
docker build -t awtest .La première fois que cette commande est exécutée, cela peut prendre plus de temps, car Docker doit télécharger les images requises. Une fois la commande précédente terminée, exécutez la commande suivante:
docker run --mount type=bind,source=C:\Temp,target=/TestOut --rm awtest from DockerAspose.Words est disponible pour .NET Framework et .NET Core. Les images .NET Core sont beaucoup plus petites que les images .NET Framework, ce qui fait du .NET Core le meilleur choix pour créer des microservices et pour une utilisation dans des conteneurs. Il est possible de déployer des applications sur des conteneurs Linux Docker (pour un déploiement multiplateforme), qui sont plus légers que les conteneurs Windows.
Les images officielles du .NET Core SDK sont fournies pour:
-Debian 9 et 10 -Ubuntu 18.04 et 19.04 -Alpine 3.7 et 3.9 -Windows NanoServer
Pour travailler avec des graphiques, Aspose.Words pour .NET Standard dépend de SkiaSharp. Cela limite les images sur lesquelles Aspose.Words peut être exécuté aux éléments suivants:
-Debian 9 et 10 -Ubuntu 18.04 et 19.04
SkiaSharp ne fonctionne pas sur Windows Nano Server en raison du manque de certaines dépendances natives qui est un problème connu dans SkiaSharp. Le problème sera résolu dans la version 1.68.1.1 de SkiaSharp. Si vous devez exécuter Aspose.Words dans un conteneur Windows, utilisez l’image de base .NET Framework avec la version .NET Framework de Aspose.Words, qui ne dépend pas de SkiaSharp.
SkiaSharp est un wrapper autour de la bibliothèque native Skia. Les environnements d’exécution suivants sont fournis dans le package SkiaSharp NuGet:
-osx
Pour l’exécuter dans Linux, vous devez utiliser des packages NuGet supplémentaires avec les actifs natifs correspondants, tels que les versions natives de la bibliothèque Skia, répertoriées ci-dessous:
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.