Jak spustit Aspose.CAD v Dockeru
Předpoklady
- Docker musí být nainstalován ve vašem systému. Pokud chcete informace o instalaci Dockeru na Windows nebo Mac, podívejte se na odkazy v sekci „Viz také“.
- Visual Studio 2022.
- Verze NET 6 SDK je použita v tomto příkladu.
Aplikace Hello World
V tomto příkladu vytvoříte jednoduchou konzolovou aplikaci Hello World, která kreslí elipsu a ukládá ji jako obrázek. Aplikace pak může být sestavena a spuštěna v Dockeru.
Vytvoření konzolové aplikace
Chcete-li vytvořit program Hello World, postupujte podle níže uvedených kroků:
- Jakmile je Docker nainstalován, ujistěte se, že používá linuxové kontejnery (výchozí). Pokud je to nutné, vyberte možnost Přepnout na Linuxové kontejnery z nabídky Docker Desktops.
- V programu Visual Studio vytvořte konzolovou aplikaci NET 6.
- Nainstalujte nejnovější verzi Aspose.CAD z NuGet.
- Jelikož aplikace bude spuštěna na Linuxu, může být nutné nainstalovat další písma. Můžete upřednostnit ttf-mscorefonts-installer.
- Jakmile jsou přidány všechny potřebné závislosti, napište jednoduchý program, který vytvoří elipsu a uloží ji jako obrázek:
using (var img = Aspose.CAD.Image.Load(System.IO.Directory.GetCurrentDirectory() + "/input.dxf"))
{
img.Save(Path.Combine("TestOut", "output.png"), new Aspose.CAD.ImageOptions.PngOptions());
}
Všimněte si, že složka „TestOut“ je určena jako výstupní složka pro ukládání výstupních dokumentů. Při spuštění aplikace v Dockeru bude složka na hostitelském stroji připojena k této složce v kontejneru. To vám umožní snadno zobrazit výstup vygenerovaný pomocí Aspose.CAD v kontejneru Docker.
Konfigurace Dockerfile
Dalším krokem je vytvořit a nakonfigurovat soubor Dockerfile.
- Vytvořte soubor Dockerfile a umístěte ho vedle souboru řešení vaší aplikace. Tento název souboru ponechte bez přípony (výchozí).
- V souboru Dockerfile zadejte:
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS builder
WORKDIR /app
COPY /Aspose.CAD.Docker.Sample/*.csproj ./Aspose.CAD.Docker.Sample/
RUN dotnet restore ./Aspose.CAD.Docker.Sample/
COPY /Aspose.CAD.Docker.Sample ./Aspose.CAD.Docker.Sample/
WORKDIR /app/Aspose.CAD.Docker.Sample
RUN dotnet publish -c Release -o publish
FROM mcr.microsoft.com/dotnet/aspnet:6.0
WORKDIR /app
COPY --from=builder /app/Aspose.CAD.Docker.Sample/publish ./
RUN apt-get update
RUN apt-get install -y apt-utils
RUN apt-get install -y libgdiplus
RUN apt-get install -y libc6-dev
RUN ln -s /usr/lib/libgdiplus.so/usr/lib/gdiplus.dll
RUN sed -i'.bak' 's/$/ contrib/' /etc/apt/sources.list
RUN apt-get update; apt-get install -y ttf-mscorefonts-installer fontconfig
RUN apt-get install fonts-freefont-ttf
ENV ASPNETCORE_URLS=http://+:80
ENV ASPNETCORE_ENVIRONMENT=Release
EXPOSE 80
ENTRYPOINT ["dotnet", "Aspose.CAD.Docker.Sample.dll"]
Výše uvedený je jednoduchý Dockerfile, který obsahuje následující instrukce:
- Obrázek SDK, který se má použít. Zde se jedná o obrázek Net 6. Docker si jej stáhne při spuštění sestavení. Verze SDK je specifikována jako značka.
- Poté můžete potřebovat nainstalovat písma, protože obrázkový soubor SDK obsahuje velmi málo písem. Můžete také použít lokální fonty zkopírované do dockerového obrazu.
- Pracovní adresář, který je specifikován v dalším řádku.
- Příkaz k zkopírování všeho do kontejneru, k publikování aplikace a k určení vstupního bodu.
Sestavení a spuštění aplikace v Dockeru
Nyní lze aplikaci sestavit a spustit v Dockeru. Otevřete svůj oblíbený příkazový řádek, změňte adresář na složku s aplikací (složka, kde je umístěn soubor s řešením a soubor Dockerfile) a spusťte následující příkaz:
docker build -t dockerfile .
První spuštění tohoto příkazu může trvat déle, protože Docker potřebuje stáhnout požadované obrazy. Jakmile je předchozí příkaz dokončen, spusťte následující příkaz:
docker run --mount type=bind,source=C:\Temp,target=/app/TestOut --rm dockerfile z Dockeru
Další příklady
Pro další ukázky toho, jak můžete použít Aspose.CAD v Dockeru, podívejte se na příklady.