Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Los microservicios, junto con la contenedorización, permiten combinar tecnologías fácilmente. Docker le permite integrar fácilmente la funcionalidad Aspose.Words en su aplicación, independientemente de la tecnología que haya en su pila de desarrollo.
En caso de que esté apuntando a microservicios, o si la tecnología principal en su pila no es .NET, C++ o Java, pero necesita la funcionalidad Aspose.Words, o si ya usa Docker en su pila, entonces puede estar interesado en utilizar Aspose.Words en un Docker. envase.
Docker debe estar instalado en su sistema. Para obtener información sobre cómo instalar Docker en Windows o Mac, consulte los enlaces en la sección “Ver también”.
Además, tenga en cuenta que en el ejemplo que se proporciona a continuación se utiliza Visual Studio 2017, .NET Core 2.2 SDK.
En este ejemplo, creará una aplicación de consola simple Hola Mundo que genera un mensaje “¡Hola Mundo!” documento y lo guarda en todos los formatos de guardado admitidos. Luego, la aplicación se puede crear y ejecutar en Docker.
Para crear el programa Hello World, siga los pasos a continuación:
SkiaSharp.NativeAssets.Linux.Tenga en cuenta que la carpeta “TestOut” se especifica como una carpeta de salida para guardar documentos de salida. Al ejecutar la aplicación en Docker, se montará una carpeta en la máquina host en esta carpeta en el contenedor. Esto le permitirá ver fácilmente el resultado generado por Aspose.Words en el contenedor Docker.
El siguiente paso es crear y configurar el archivo Docker.
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"]Lo anterior es un archivo Docker simple, que contiene las siguientes instrucciones:
Ahora la aplicación se puede crear y ejecutar en Docker. Abra su símbolo del sistema favorito, cambie el directorio a la carpeta con la aplicación (carpeta donde se encuentran el archivo de la solución y el archivo Docker) y ejecute el siguiente comando:
docker build -t awtest .La primera vez que se ejecuta este comando puede tardar más, ya que Docker necesita descargar las imágenes requeridas. Una vez completado el comando anterior, ejecute el siguiente comando:
docker run --mount type=bind,source=C:\Temp,target=/TestOut --rm awtest from DockerAspose.Words está disponible tanto para .NET Framework como para .NET Core. Las imágenes .NET Core son mucho más pequeñas que las imágenes .NET Framework, lo que hace que .NET Core sea la mejor opción para crear microservicios y usar en contenedores. Es posible implementar aplicaciones en contenedores Linux Docker (para implementación multiplataforma), que son más livianos que los contenedores Windows.
Se proporcionan imágenes oficiales para el .NET Core SDK para:
Para trabajar con gráficos, Aspose.Words para .NET Standard depende de SkiaSharp. Esto limita las imágenes en las que se puede ejecutar Aspose.Words a lo siguiente:
SkiaSharp no funciona en Windows Nano Server debido a la falta de algunas dependencias nativas, que es un problema conocido en SkiaSharp. El problema se resolverá en la versión 1.68.1.1 de SkiaSharp. Si necesita ejecutar Aspose.Words en un contenedor Windows, utilice la imagen base .NET Framework con la versión .NET Framework de Aspose.Words, que no depende de SkiaSharp.
SkiaSharp es un contenedor de la biblioteca nativa de Skia. Los siguientes tiempos de ejecución se proporcionan en el paquete SkiaSharp NuGet:
Para ejecutarlo en Linux, debe usar paquetes NuGet adicionales con los recursos nativos correspondientes, como las compilaciones nativas de la biblioteca Skia, que se enumeran a continuación:
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.