This example assumes you already have an Optimizely Content Management System (CMS) ASP.NET Core-based application on your machine.
The project in this example is called episerversample). For more information, see Installing a sample site.
- Create a Dockerfile in your project folder.
- Add the text below to your Dockerfile for either Linux or Windows Containers. The tags below are multi-arch, meaning they pull either Windows or Linux containers depending on what mode is set in Docker Desktop for Windows. Read more in switching containers.
- The Dockerfile assumes that your application is called episerversample. Change the Dockerfile to use the DLL file of your project.
FROM mcr.microsoft.com/dotnet/sdk:5.0-buster-slim AS build-env WORKDIR /app COPY *.csproj ./ RUN dotnet restore COPY . ./ RUN dotnet publish -c Release -o out FROM mcr.microsoft.com/dotnet/aspnet:5.0-buster-slim WORKDIR /app COPY --from=build-env /app/out . EXPOSE 80 ENTRYPOINT ["dotnet", "episerversample.dll"]
- To make your build context as small as possible, add a
.dockerignorefile to your project folder and copy the following into it.
- Open a command prompt and go to your project folder.
- Use the following commands to build and run your Docker image:
docker build -t episerversample . docker run -it -e "Urls=<http://+:80>" -p 8080:80 episerversample
Updated 15 days ago