Cara Menjalankan Aspose.CAD di Docker
Prasyarat
- Docker harus diinstal di sistem Anda. Untuk informasi tentang cara menginstal Docker di Windows atau Mac, silakan merujuk ke tautan di bagian “Lihat Juga”.
- Visual Studio 2022.
- SDK .NET 6 digunakan dalam contoh ini.
Aplikasi Hello World
Dalam contoh ini, Anda membuat aplikasi konsol Hello World sederhana yang menggambar suatu elips dan menyimpannya sebagai gambar. Aplikasi kemudian dapat dibangun dan dijalankan di Docker.
Membuat Aplikasi Konsol
Untuk membuat program Hello World, ikuti langkah-langkah di bawah ini:
- Setelah Docker terinstal, pastikan bahwa ini menggunakan Kontainer Linux (default). Jika perlu, pilih opsi Beralih ke kontainer Linux dari menu Docker Desktop.
- Di Visual Studio, buat aplikasi konsol .NET 6.
- Instal versi terbaru Aspose.CAD dari NuGet.
- Karena aplikasi akan dijalankan di Linux, Anda mungkin perlu menginstal font tambahan. Anda dapat memilih ttf-mscorefonts-installer.
- Ketika semua dependensi yang diperlukan telah ditambahkan, tulis program sederhana yang membuat elips dan menyimpannya sebagai gambar:
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());
}
Perhatikan bahwa folder “TestOut” ditentukan sebagai folder keluaran untuk menyimpan dokumen keluaran. Saat menjalankan aplikasi di Docker, sebuah folder di mesin host akan dipasang ke folder ini di dalam kontainer. Ini akan memungkinkan Anda untuk dengan mudah melihat keluaran yang dihasilkan oleh Aspose.CAD di dalam kontainer Docker.
Mengonfigurasi Dockerfile
Langkah selanjutnya adalah membuat dan mengonfigurasi Dockerfile.
- Buat Dockerfile dan tempatkan di samping file solusi aplikasi Anda. Jaga nama file ini tanpa ekstensi (default).
- Di dalam Dockerfile, tentukan:
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"]
Di atas adalah Dockerfile sederhana, yang berisi instruksi berikut:
- Gambar SDK yang akan digunakan. Di sini adalah gambar .NET 6. Docker akan mengunduhnya ketika build dijalankan. Versi SDK ditentukan sebagai tag.
- Setelah itu, Anda mungkin perlu menginstal Font karena gambar SDK mengandung sangat sedikit font. Selain itu, Anda juga dapat menggunakan font lokal yang disalin ke gambar docker.
- Direktori kerja, yang ditentukan pada baris berikutnya.
- Perintah untuk menyalin semuanya ke kontainer, menerbitkan aplikasi, dan menentukan titik masuk.
Membangun dan Menjalankan Aplikasi di Docker
Sekarang aplikasi dapat dibangun dan dijalankan di Docker. Buka command prompt favorit Anda, ubah direktori ke folder dengan aplikasi (folder tempat file solusi dan Dockerfile ditempatkan) dan jalankan perintah berikut:
docker build -t dockerfile .
Waktu pertama perintah ini dijalankan mungkin memakan waktu lebih lama, karena Docker perlu mengunduh gambar yang diperlukan. Setelah perintah sebelumnya selesai, jalankan perintah berikut:
docker run --mount type=bind,source=C:\Temp,target=/app/TestOut --rm dockerfile
Contoh Lain
Untuk lebih banyak contoh tentang bagaimana Anda dapat menggunakan Aspose.CAD di Docker, lihat contoh.