Installing Umbraco on Alpine Linux Latest

Umbraco is a widely-used open source content management system (CMS) that is written in C#. In this tutorial, we will be installing Umbraco on Alpine Linux Latest.

Prerequisites

Before we get started, ensure that your system meets the following requirements:

  1. Alpine Linux Latest is installed and updated.
  2. Docker is installed and running on the system.
  3. An internet connection is available.

Step 1: Create a new Docker container

We will start by creating a new Docker container to install Umbraco on Alpine Linux. We will use Docker Compose to create the container.

  1. Create a new directory named umbraco:

    mkdir umbraco
    
  2. Navigate to the new directory:

    cd umbraco
    
  3. Create a file called docker-compose.yml:

    touch docker-compose.yml
    

    Add the following code to the docker-compose.yml file:

    version: '3.3'
    services:
      umbraco:
        image: "alpine:latest"
        container_name: "umbraco"
        restart: always
        volumes:
          - ./umbraco:/app
          - ./entrypoint.sh:/entrypoint.sh
        environment:
          - ASPNETCORE_URLS=http://+:80
          - ASPNETCORE_ENVIRONMENT=Production
        ports:
          - "8080:80"
    

    Here, we have specified the version of Docker Compose and defined a service named umbraco. We use the Alpine Linux Latest image, specify the container name as umbraco, and set the container to restart if it fails. The Umbraco files will be mounted through the volumes option.

  4. Create a file called entrypoint.sh:

    touch entrypoint.sh
    

    Add the following code to the entrypoint.sh file:

    #!/bin/sh
    cd /app
    apk update
    apk add curl unzip
    curl -LO https://downloads.sourceforge.net/project/umbraco/Umbraco%20CMS/8.15.1/UmbracoCms.8.15.1.zip
    unzip UmbracoCms.8.15.1.zip
    chmod -R 777 /app
    cd Umbraco
    

    This file will be used as the entrypoint to the container. We use curl to download the Umbraco files and unzip to extract the files. We also set the permissions for the Umbraco files to be executable.

Step 2: Install Umbraco

  1. Start the Docker container:

    docker-compose up -d
    
  2. Verify that the container has started successfully:

    docker ps
    

    This should show the running container named umbraco.

  3. Access the container:

    docker exec -it umbraco /bin/sh
    
  4. Start the Umbraco installer:

    cd /app/Umbraco
    dotnet new -i Umbraco.Templates::9.0.0-beta007
    dotnet new -u Umbraco.Cms.IdentityServer4Plugin::8.5.1
    dotnet new -u Umbraco.Cms.TourPlugin::8.5.1
    dotnet new -u Umbraco.Cms.UdiPlugin::8.5.1
    dotnet new -u Umbraco.Cms.TeiPlugin::8.5.1
    dotnet new umbraco -n Umbraco.Test
    

    These commands will install the Umbraco templates and create a new Umbraco project named Umbraco.Test.

  5. Open a web browser and go to:

    http://localhost:8080
    

    This should show the Umbraco website.

  6. Follow the prompts to complete the Umbraco installation process.

Conclusion

In this tutorial, we have shown how to install Umbraco on Alpine Linux Latest using Docker. We created a Docker container, installed Umbraco within it, and accessed Umbraco through a web browser on the local host.

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!