NCache is an extremely fast and scalable in-memory Distributed Cache for .NET / .NET Core. It lets you remove bottlenecks related to database and data storage and linearly scale your applications.
You can download a Windows Installer (.msi) or a tar.gz NCache and install it on either Windows or Linux platforms. Or you can simplify your installation by deploying NCache in a Docker container.
The easiest and quickest way to start using NCache is to fetch a pre-built NCache Docker Image from Docker Hub. These Docker images come preinstalled with NCache. Simply use the “docker pull” command to install them in your environment.
Execute the following command in Windows PowerShell or a shell of your choice to pull NCache Enterprise Server for Windows from DockerHub.
docker pull alachisoft/ncache:latest
You can also execute any of these commands to pull NCache Enterprise Windows Server Core image:
docker pull alachisoft/ncache docker pull alachisoft/ncache:enterprise-server-5.0
NCache Enterprise is available as a Docker image for Linux Debian 9. For other flavors of Linux, please use the Docker File provided by Alachisoft and modify it for your preferred flavor or Linux.
docker pull alachisoft/ncache:enterprise-server-linux-5.0
In most situations, you are fine just using the standard Docker image of NCache from Docker Hub. But, in some cases, you may want to create a custom Docker image that includes your software or other variations of even standard OS software.
One example of this is the flavor of Linux. NCache Docker image on Docker Hub uses Debian Linux but you may want another flavor of Linux for your NCache servers; NCache works fine on multiple flavors of Linux. Or, you may want to create a custom Docker Image for your application server (NCache Client) that contains not only your own application but also NCache client software.
In all such cases, NCache provides you various Dockerfiles that you can edit and customize to fit your needs.
Here are a few examples of these Dockerfiles uploaded on GitHub that you can edit to create a custom Docker Image.
Here is how a typical Dockerfile NCache Enterprise Server for Windows Server Core looks like.
# Setting base image for NCache FROM mcr.microsoft.com/dotnet/core/runtime:3.0 # Setting environment variable so the NCache install script knows that it's running inside a container ENV container ncachedocker # Setting work directory to copy setups and resources for configuring NCache WORKDIR /app COPY resources. # Exposing ports used by NCache for communication EXPOSE 8250 8251 9800 7800-7900 8300-8400 8260 10000-10100 # Installing package procps (Prerequisite of NCache services) RUN apt-get update &&\ apt-get install procps ed -y RUN chmod -R 775 /app &&\ ./installncache.sh --firstname "John" --lastname "Smith" --email "firstname.lastname@example.org" --company "Alachisoft" --evalkey "xxxxxxxx" --installpath /opt --force --password "xxxxxxxx" --installmode 0 # Entry point for the container once required configurations have been made ENTRYPOINT ["/app/startup.sh"]