Gambar Docker untuk ASP.NET Core

Artikel ini memperlihatkan cara menjalankan aplikasi ASP.NET Core di kontainer Docker.

Windows Home Edition tidak mendukung Hyper-V, dan Hyper-V diperlukan untuk Docker.

Lihat Membuat kontainer aplikasi .NET dengan publikasi dotnet untuk informasi tentang aplikasi .NET dalam kontainer dengan dotnet publish.

gambar ASP.NET Core Docker

Untuk tutorial ini, Anda mengunduh aplikasi sampel ASP.NET Core dan menjalankannya di kontainer Docker. Sampel berfungsi dengan kontainer Linux dan Windows.

Contoh Dockerfile menggunakan fitur build multi-tahap Docker untuk membangun dan menjalankan dalam kontainer yang berbeda. Kontainer build dan run dibuat dari gambar yang disediakan di Docker Hub oleh Microsoft:

  • dotnet/sdk

    Sampel menggunakan gambar ini untuk membangun aplikasi. Gambar berisi .NET SDK, yang mencakup Command Line Tools (CLI). Gambar dioptimalkan untuk pengembangan lokal, penelusuran kesalahan, dan pengujian unit. Alat yang diinstal untuk pengembangan dan kompilasi membuat gambar relatif besar.

  • dotnet/aspnet

    Sampel menggunakan gambar ini untuk menjalankan aplikasi. Gambar berisi runtime dan pustaka ASP.NET Core dan dioptimalkan untuk menjalankan aplikasi dalam produksi. Dirancang untuk kecepatan penyebaran dan startup aplikasi, gambarnya relatif kecil, sehingga performa jaringan dari Docker Registry ke host Docker dioptimalkan. Hanya biner dan konten yang diperlukan untuk menjalankan aplikasi yang disalin ke kontainer. Konten siap dijalankan, memungkinkan waktu tercepat dari docker run ke startup aplikasi. Kompilasi kode dinamis tidak diperlukan dalam model Docker.

Prasyarat

Mengunduh aplikasi sampel

  • Unduh sampel dengan mengkloning repositori .NET Docker:

    git clone https://github.com/dotnet/dotnet-docker
    

Menjalankan aplikasi secara lokal

  • Navigasi ke folder proyek di dotnet-docker/samples/aspnetapp/aspnetapp.

  • Jalankan perintah berikut untuk membuat dan menjalankan aplikasi secara lokal:

    dotnet run
    
  • http://localhost:5000 Buka di browser untuk menguji aplikasi.

  • Tekan Ctrl+C pada prompt perintah untuk menghentikan aplikasi.

Jalankan dalam kontainer Linux atau kontainer Windows

  • Untuk menjalankan dalam kontainer Linux, klik kanan ikon klien Docker Baki Sistem dan pilih beralih ke kontainer Linux.

  • Untuk menjalankan dalam kontainer Windows, klik kanan ikon klien Docker Baki Sistem dan pilih beralih ke kontainer Windows.

  • Navigasi ke folder Dockerfile di dotnet-docker/samples/aspnetapp.

  • Jalankan perintah berikut untuk membuat dan menjalankan sampel di Docker:

    docker build -t aspnetapp .
    docker run -it --rm -p 5000:8080 --name aspnetcore_sample aspnetapp
    

    Argumen build perintah:

    • Beri nama aspnetapp gambar.
    • Cari Dockerfile di folder saat ini (periode di akhir).

    Argumen perintah eksekusi:

    • Alokasikan pseudo-TTY dan tetap buka meskipun tidak terpasang. (Efek yang sama seperti --interactive --tty.)
    • Hapus kontainer secara otomatis saat keluar.
    • Petakan port 5000 pada komputer lokal ke port 8080 dalam kontainer.
    • Beri nama kontainer aspnetcore_sample.
    • Tentukan gambar aspnetapp.
  • http://localhost:5000 Buka di browser untuk menguji aplikasi.

Membangun dan menyebarkan secara manual

Dalam beberapa skenario, Anda mungkin ingin menyebarkan aplikasi ke kontainer dengan menyalin asetnya yang diperlukan pada waktu proses. Bagian ini menunjukkan cara menyebarkan secara manual.

  • Navigasi ke folder proyek di dotnet-docker/samples/aspnetapp/aspnetapp.

  • Jalankan perintah terbitkan dotnet:

    dotnet publish -c Release -o published
    

    Argumen perintah:

    • Buat aplikasi dalam mode rilis (defaultnya adalah mode debug).
    • Buat aset di folder yang diterbitkan .
  • Jalankan aplikasi.

    • Windows:

      dotnet published\aspnetapp.dll
      
    • Linux:

      dotnet published/aspnetapp.dll
      
  • Telusuri untuk http://localhost:5000 melihat halaman beranda.

Untuk menggunakan aplikasi yang diterbitkan secara manual dalam kontainer Docker, buat Dockerfile baru dan gunakan docker build . perintah untuk membuat gambar.

FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS runtime
WORKDIR /app
COPY published/ ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]

Untuk melihat gambar baru, gunakan docker images perintah .

Dockerfile

Berikut adalah Dockerfile yang digunakan oleh perintah yang Anda jalankan docker build sebelumnya. Ini menggunakan dotnet publish cara yang sama seperti yang Anda lakukan di bagian ini untuk membangun dan menyebarkan.

# https://hub.docker.com/_/microsoft-dotnet
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /source

# copy csproj and restore as distinct layers
COPY *.sln .
COPY aspnetapp/*.csproj ./aspnetapp/
RUN dotnet restore

# copy everything else and build app
COPY aspnetapp/. ./aspnetapp/
WORKDIR /source/aspnetapp
RUN dotnet publish -c release -o /app --no-restore

# final stage/image
FROM mcr.microsoft.com/dotnet/aspnet:8.0
WORKDIR /app
COPY --from=build /app ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]

Dalam Dockerfile sebelumnya, file disalin *.csproj dan dipulihkan sebagai lapisan yang berbeda. docker build Saat perintah membangun gambar, perintah menggunakan cache bawaan. *.csproj Jika file belum berubah sejak docker build perintah terakhir dijalankan, dotnet restore perintah tidak perlu dijalankan lagi. Sebagai gantinya, cache bawaan untuk lapisan yang dotnet restore sesuai digunakan kembali. Untuk informasi selengkapnya, lihat Praktik terbaik untuk menulis Dockerfiles.

Sumber Daya Tambahan:

Langkah berikutnya

Repositori Git yang berisi aplikasi sampel juga menyertakan dokumentasi. Untuk gambaran umum sumber daya yang tersedia di repositori, lihat file README. Secara khusus, pelajari cara menerapkan HTTPS:

gambar ASP.NET Core Docker

Untuk tutorial ini, Anda mengunduh aplikasi sampel ASP.NET Core dan menjalankannya di kontainer Docker. Sampel berfungsi dengan kontainer Linux dan Windows.

Contoh Dockerfile menggunakan fitur build multi-tahap Docker untuk membangun dan menjalankan dalam kontainer yang berbeda. Kontainer build dan run dibuat dari gambar yang disediakan di Docker Hub oleh Microsoft:

  • dotnet/sdk

    Sampel menggunakan gambar ini untuk membangun aplikasi. Gambar berisi .NET SDK, yang mencakup Command Line Tools (CLI). Gambar dioptimalkan untuk pengembangan lokal, penelusuran kesalahan, dan pengujian unit. Alat yang diinstal untuk pengembangan dan kompilasi membuat gambar relatif besar.

  • dotnet/aspnet

    Sampel menggunakan gambar ini untuk menjalankan aplikasi. Gambar berisi runtime dan pustaka ASP.NET Core dan dioptimalkan untuk menjalankan aplikasi dalam produksi. Dirancang untuk kecepatan penyebaran dan startup aplikasi, gambarnya relatif kecil, sehingga performa jaringan dari Docker Registry ke host Docker dioptimalkan. Hanya biner dan konten yang diperlukan untuk menjalankan aplikasi yang disalin ke kontainer. Konten siap dijalankan, memungkinkan waktu tercepat dari docker run ke startup aplikasi. Kompilasi kode dinamis tidak diperlukan dalam model Docker.

Prasyarat

Mengunduh aplikasi sampel

  • Unduh sampel dengan mengkloning repositori .NET Docker:

    git clone https://github.com/dotnet/dotnet-docker
    

Menjalankan aplikasi secara lokal

  • Navigasi ke folder proyek di dotnet-docker/samples/aspnetapp/aspnetapp.

  • Jalankan perintah berikut untuk membuat dan menjalankan aplikasi secara lokal:

    dotnet run
    
  • http://localhost:5000 Buka di browser untuk menguji aplikasi.

  • Tekan Ctrl+C pada prompt perintah untuk menghentikan aplikasi.

Jalankan dalam kontainer Linux atau kontainer Windows

  • Untuk menjalankan dalam kontainer Linux, klik kanan ikon klien Docker Baki Sistem dan pilih beralih ke kontainer Linux.

  • Untuk menjalankan dalam kontainer Windows, klik kanan ikon klien Docker Baki Sistem dan pilih beralih ke kontainer Windows.

  • Navigasi ke folder Dockerfile di dotnet-docker/samples/aspnetapp.

  • Jalankan perintah berikut untuk membuat dan menjalankan sampel di Docker:

    docker build -t aspnetapp .
    docker run -it --rm -p 5000:80 --name aspnetcore_sample aspnetapp
    

    Argumen build perintah:

    • Beri nama aspnetapp gambar.
    • Cari Dockerfile di folder saat ini (periode di akhir).

    Argumen perintah eksekusi:

    • Alokasikan pseudo-TTY dan tetap buka meskipun tidak terpasang. (Efek yang sama seperti --interactive --tty.)
    • Hapus kontainer secara otomatis saat keluar.
    • Petakan port 5000 pada komputer lokal ke port 80 dalam kontainer.
    • Beri nama kontainer aspnetcore_sample.
    • Tentukan gambar aspnetapp.
  • http://localhost:5000 Buka di browser untuk menguji aplikasi.

Membangun dan menyebarkan secara manual

Dalam beberapa skenario, Anda mungkin ingin menyebarkan aplikasi ke kontainer dengan menyalin asetnya yang diperlukan pada waktu proses. Bagian ini menunjukkan cara menyebarkan secara manual.

  • Navigasi ke folder proyek di dotnet-docker/samples/aspnetapp/aspnetapp.

  • Jalankan perintah terbitkan dotnet:

    dotnet publish -c Release -o published
    

    Argumen perintah:

    • Buat aplikasi dalam mode rilis (defaultnya adalah mode debug).
    • Buat aset di folder yang diterbitkan .
  • Jalankan aplikasi.

    • Windows:

      dotnet published\aspnetapp.dll
      
    • Linux:

      dotnet published/aspnetapp.dll
      
  • Telusuri untuk http://localhost:5000 melihat halaman beranda.

Untuk menggunakan aplikasi yang diterbitkan secara manual dalam kontainer Docker, buat Dockerfile baru dan gunakan docker build . perintah untuk membuat gambar.

FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS runtime
WORKDIR /app
COPY published/ ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]

Untuk melihat gambar baru, gunakan docker images perintah .

Dockerfile

Berikut adalah Dockerfile yang digunakan oleh perintah yang Anda jalankan docker build sebelumnya. Ini menggunakan dotnet publish cara yang sama seperti yang Anda lakukan di bagian ini untuk membangun dan menyebarkan.

# https://hub.docker.com/_/microsoft-dotnet
FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build
WORKDIR /source

# copy csproj and restore as distinct layers
COPY *.sln .
COPY aspnetapp/*.csproj ./aspnetapp/
RUN dotnet restore

# copy everything else and build app
COPY aspnetapp/. ./aspnetapp/
WORKDIR /source/aspnetapp
RUN dotnet publish -c release -o /app --no-restore

# final stage/image
FROM mcr.microsoft.com/dotnet/aspnet:7.0
WORKDIR /app
COPY --from=build /app ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]

Dalam Dockerfile sebelumnya, file disalin *.csproj dan dipulihkan sebagai lapisan yang berbeda. docker build Saat perintah membangun gambar, perintah menggunakan cache bawaan. *.csproj Jika file belum berubah sejak docker build perintah terakhir dijalankan, dotnet restore perintah tidak perlu dijalankan lagi. Sebagai gantinya, cache bawaan untuk lapisan yang dotnet restore sesuai digunakan kembali. Untuk informasi selengkapnya, lihat Praktik terbaik untuk menulis Dockerfiles.

Sumber Daya Tambahan:

Langkah berikutnya

Repositori Git yang berisi aplikasi sampel juga menyertakan dokumentasi. Untuk gambaran umum sumber daya yang tersedia di repositori, lihat file README. Secara khusus, pelajari cara menerapkan HTTPS:

gambar ASP.NET Core Docker

Untuk tutorial ini, Anda mengunduh aplikasi sampel ASP.NET Core dan menjalankannya di kontainer Docker. Sampel berfungsi dengan kontainer Linux dan Windows.

Contoh Dockerfile menggunakan fitur build multi-tahap Docker untuk membangun dan menjalankan dalam kontainer yang berbeda. Kontainer build dan run dibuat dari gambar yang disediakan di Docker Hub oleh Microsoft:

  • dotnet/sdk

    Sampel menggunakan gambar ini untuk membangun aplikasi. Gambar berisi .NET SDK, yang mencakup Command Line Tools (CLI). Gambar dioptimalkan untuk pengembangan lokal, penelusuran kesalahan, dan pengujian unit. Alat yang diinstal untuk pengembangan dan kompilasi membuat gambar relatif besar.

  • dotnet/core/sdk

    Sampel menggunakan gambar ini untuk membangun aplikasi. Gambar berisi .NET Core SDK, yang mencakup Command Line Tools (CLI). Gambar dioptimalkan untuk pengembangan lokal, penelusuran kesalahan, dan pengujian unit. Alat yang diinstal untuk pengembangan dan kompilasi membuat gambar relatif besar.

  • dotnet/aspnet

    Sampel menggunakan gambar ini untuk menjalankan aplikasi. Gambar berisi runtime dan pustaka ASP.NET Core dan dioptimalkan untuk menjalankan aplikasi dalam produksi. Dirancang untuk kecepatan penyebaran dan startup aplikasi, gambarnya relatif kecil, sehingga performa jaringan dari Docker Registry ke host Docker dioptimalkan. Hanya biner dan konten yang diperlukan untuk menjalankan aplikasi yang disalin ke kontainer. Konten siap dijalankan, memungkinkan waktu tercepat dari docker run ke startup aplikasi. Kompilasi kode dinamis tidak diperlukan dalam model Docker.

  • dotnet/core/aspnet

    Sampel menggunakan gambar ini untuk menjalankan aplikasi. Gambar berisi runtime dan pustaka ASP.NET Core dan dioptimalkan untuk menjalankan aplikasi dalam produksi. Dirancang untuk kecepatan penyebaran dan startup aplikasi, gambarnya relatif kecil, sehingga performa jaringan dari Docker Registry ke host Docker dioptimalkan. Hanya biner dan konten yang diperlukan untuk menjalankan aplikasi yang disalin ke kontainer. Konten siap dijalankan, memungkinkan waktu tercepat dari docker run ke startup aplikasi. Kompilasi kode dinamis tidak diperlukan dalam model Docker.

Prasyarat

Mengunduh aplikasi sampel

  • Unduh sampel dengan mengkloning repositori .NET Docker:

    git clone https://github.com/dotnet/dotnet-docker
    

Menjalankan aplikasi secara lokal

  • Navigasi ke folder proyek di dotnet-docker/samples/aspnetapp/aspnetapp.

  • Jalankan perintah berikut untuk membuat dan menjalankan aplikasi secara lokal:

    dotnet run
    
  • http://localhost:5000 Buka di browser untuk menguji aplikasi.

  • Tekan Ctrl+C pada prompt perintah untuk menghentikan aplikasi.

Jalankan dalam kontainer Linux atau kontainer Windows

  • Untuk menjalankan dalam kontainer Linux, klik kanan ikon klien Docker Baki Sistem dan pilih beralih ke kontainer Linux.

  • Untuk menjalankan dalam kontainer Windows, klik kanan ikon klien Docker Baki Sistem dan pilih beralih ke kontainer Windows.

  • Navigasi ke folder Dockerfile di dotnet-docker/samples/aspnetapp.

  • Jalankan perintah berikut untuk membuat dan menjalankan sampel di Docker:

    docker build -t aspnetapp .
    docker run -it --rm -p 5000:80 --name aspnetcore_sample aspnetapp
    

    Argumen build perintah:

    • Beri nama aspnetapp gambar.
    • Cari Dockerfile di folder saat ini (periode di akhir).

    Argumen perintah eksekusi:

    • Alokasikan pseudo-TTY dan tetap buka meskipun tidak terpasang. (Efek yang sama seperti --interactive --tty.)
    • Hapus kontainer secara otomatis saat keluar.
    • Petakan port 5000 pada komputer lokal ke port 80 dalam kontainer.
    • Beri nama kontainer aspnetcore_sample.
    • Tentukan gambar aspnetapp.
  • http://localhost:5000 Buka di browser untuk menguji aplikasi.

Membangun dan menyebarkan secara manual

Dalam beberapa skenario, Anda mungkin ingin menyebarkan aplikasi ke kontainer dengan menyalin asetnya yang diperlukan pada waktu proses. Bagian ini menunjukkan cara menyebarkan secara manual.

  • Navigasi ke folder proyek di dotnet-docker/samples/aspnetapp/aspnetapp.

  • Jalankan perintah terbitkan dotnet:

    dotnet publish -c Release -o published
    

    Argumen perintah:

    • Buat aplikasi dalam mode rilis (defaultnya adalah mode debug).
    • Buat aset di folder yang diterbitkan .
  • Jalankan aplikasi.

    • Windows:

      dotnet published\aspnetapp.dll
      
    • Linux:

      dotnet published/aspnetapp.dll
      
  • Telusuri untuk http://localhost:5000 melihat halaman beranda.

Untuk menggunakan aplikasi yang diterbitkan secara manual dalam kontainer Docker, buat Dockerfile baru dan gunakan docker build . perintah untuk membuat gambar.

FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS runtime
WORKDIR /app
COPY published/ ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]

Untuk melihat gambar baru, gunakan docker images perintah .

Dockerfile

Berikut adalah Dockerfile yang digunakan oleh perintah yang Anda jalankan docker build sebelumnya. Ini menggunakan dotnet publish cara yang sama seperti yang Anda lakukan di bagian ini untuk membangun dan menyebarkan.

# https://hub.docker.com/_/microsoft-dotnet
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
WORKDIR /source

# copy csproj and restore as distinct layers
COPY *.sln .
COPY aspnetapp/*.csproj ./aspnetapp/
RUN dotnet restore

# copy everything else and build app
COPY aspnetapp/. ./aspnetapp/
WORKDIR /source/aspnetapp
RUN dotnet publish -c release -o /app --no-restore

# final stage/image
FROM mcr.microsoft.com/dotnet/aspnet:6.0
WORKDIR /app
COPY --from=build /app ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]
FROM mcr.microsoft.com/dotnet/aspnet:5.0 AS runtime
WORKDIR /app
COPY published/ ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]

Untuk melihat gambar baru, gunakan docker images perintah .

Dockerfile

Berikut adalah Dockerfile yang digunakan oleh perintah yang Anda jalankan docker build sebelumnya. Ini menggunakan dotnet publish cara yang sama seperti yang Anda lakukan di bagian ini untuk membangun dan menyebarkan.

# https://hub.docker.com/_/microsoft-dotnet
FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
WORKDIR /source

# copy csproj and restore as distinct layers
COPY *.sln .
COPY aspnetapp/*.csproj ./aspnetapp/
RUN dotnet restore

# copy everything else and build app
COPY aspnetapp/. ./aspnetapp/
WORKDIR /source/aspnetapp
RUN dotnet publish -c release -o /app --no-restore

# final stage/image
FROM mcr.microsoft.com/dotnet/aspnet:5.0
WORKDIR /app
COPY --from=build /app ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]

Dalam Dockerfile sebelumnya, file disalin *.csproj dan dipulihkan sebagai lapisan yang berbeda. docker build Saat perintah membangun gambar, perintah menggunakan cache bawaan. *.csproj Jika file belum berubah sejak docker build perintah terakhir dijalankan, dotnet restore perintah tidak perlu dijalankan lagi. Sebagai gantinya, cache bawaan untuk lapisan yang dotnet restore sesuai digunakan kembali. Untuk informasi selengkapnya, lihat Praktik terbaik untuk menulis Dockerfiles.

FROM mcr.microsoft.com/dotnet/core/aspnet:3.0 AS runtime
WORKDIR /app
COPY published/ ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]

Dockerfile

Berikut adalah Dockerfile yang digunakan oleh perintah yang Anda jalankan docker build sebelumnya. Ini menggunakan dotnet publish cara yang sama seperti yang Anda lakukan di bagian ini untuk membangun dan menyebarkan.

FROM mcr.microsoft.com/dotnet/core/sdk:3.0 AS build
WORKDIR /app

# copy csproj and restore as distinct layers
COPY *.sln .
COPY aspnetapp/*.csproj ./aspnetapp/
RUN dotnet restore

# copy everything else and build app
COPY aspnetapp/. ./aspnetapp/
WORKDIR /app/aspnetapp
RUN dotnet publish -c Release -o out

FROM mcr.microsoft.com/dotnet/core/aspnet:3.0 AS runtime
WORKDIR /app
COPY --from=build /app/aspnetapp/out ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]

Seperti yang disebutkan dalam Dockerfile sebelumnya, *.csproj file disalin dan dipulihkan sebagai lapisan yang berbeda. docker build Saat perintah membangun gambar, perintah menggunakan cache bawaan. *.csproj Jika file belum berubah sejak docker build perintah terakhir dijalankan, dotnet restore perintah tidak perlu dijalankan lagi. Sebagai gantinya, cache bawaan untuk lapisan yang dotnet restore sesuai digunakan kembali. Untuk informasi selengkapnya, lihat Praktik terbaik untuk menulis Dockerfiles.

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2 AS runtime
WORKDIR /app
COPY published/ ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]

Dockerfile

Berikut adalah Dockerfile yang digunakan oleh perintah yang Anda jalankan docker build sebelumnya. Ini menggunakan dotnet publish cara yang sama seperti yang Anda lakukan di bagian ini untuk membangun dan menyebarkan.

FROM mcr.microsoft.com/dotnet/core/sdk:2.2 AS build
WORKDIR /app

# copy csproj and restore as distinct layers
COPY *.sln .
COPY aspnetapp/*.csproj ./aspnetapp/
RUN dotnet restore

# copy everything else and build app
COPY aspnetapp/. ./aspnetapp/
WORKDIR /app/aspnetapp
RUN dotnet publish -c Release -o out

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2 AS runtime
WORKDIR /app
COPY --from=build /app/aspnetapp/out ./
ENTRYPOINT ["dotnet", "aspnetapp.dll"]

Dalam Dockerfile sebelumnya, file disalin *.csproj dan dipulihkan sebagai lapisan yang berbeda. docker build Saat perintah membangun gambar, perintah menggunakan cache bawaan. *.csproj Jika file belum berubah sejak docker build perintah terakhir dijalankan, dotnet restore perintah tidak perlu dijalankan lagi. Sebagai gantinya, cache bawaan untuk lapisan yang dotnet restore sesuai digunakan kembali. Untuk informasi selengkapnya, lihat Praktik terbaik untuk menulis Dockerfiles.

Sumber Daya Tambahan:

Langkah berikutnya

Repositori Git yang berisi aplikasi sampel juga menyertakan dokumentasi. Untuk gambaran umum sumber daya yang tersedia di repositori, lihat file README. Secara khusus, pelajari cara menerapkan HTTPS: