The road of installing Alpine v3.20.3 Virtual x86_64.

Prerequisite

  1. VPS: minimap 1 GB Memory
  2. Access to GRUB, starting with Debian default installation.
    Remember - Hostname:
    Remember - Domain name:

Debian installation

During the installation remember Hostname and Domain name.

Summary Debian Configuration

  • Hostname: {{hostName}}
  • Domain name: colo.transip.net
  • Language: English - English
  • Country, territory or area: Other / Europe / Netherlands
  • Country to base default locale settings on: United Kindom - en_GB.UTF-8
  • Keymap to use: American English
  • HTTP Proxy information: blank
  • Root password: ********
  • Re-enter password to verify: ********
  • Full name for the new user: Harianto
  • Username for your account: harianto
  • Choose a password for the new user: ********
  • Partitioning method: Guided - use entire disk
  • Select disk to partition: Virtual disk 1 (vda) - 161.1 GB Virtio Block Device
  • Partitioning Scheme: All files in one partition (recommended for new users)
  • Finish partitioning and write change to disk
  • Write the changes to disk?: Yes
  • Participate in the package usage survey?: FUCK NO
  • Choose only software to install: SSH server and standard system utilities
  • Install the GRUB boot loader to your primary drive? Yes
  • Device for boot loader installation: /dev/vda (virtio-969d82dd5e3a3a7c4cdf

Partition disks
Virtual disk 1 (vda) - 161.1 GB Virtio Block Device
#1 primary   160 GB. f ext4 /
#5 logical 1.0 GB f swap swap

Prepare before we go into GRUB shell

  • Download the Alpine Virtua ISO x86_64 file
  • Move ISO to / directory (for easy access)
  • (optional) Check ISO /boot for:
    - vmlinuz-virt
    - initramfs-virt
# Go to root
cd /
# Download latest Alpine Virtual
wget https://dl-cdn.alpinelinux.org/alpine/v3.20/releases/x86_64/alpine-virt-3.20.3-x86_64.iso
Shell

(Optional) Check ISO boot files

sudo mount-o loop /alpine-virt-3.20.3-x86_64.iso /mnt/

ls-l /mnt/boot/

> see if those files vmlinuz-virt and initramfs-virt exists

sudo umount /mnt

Reboot

After reboot make sure you can press c.

reboot

Booting GRUB into Shell

Use arrow keys to stop countdown, then press c button.

GRUB terminal

Boot Alpine from ISO

# loopback
loopback l /alpine-virt-3.20.3-x86_64.iso
# attach boot
linux (l)/boot/vmlinuz-virt
initrd (l)/boot/initramfs-virt
# exec
boot
Commands to boot from Alpine ISO
A few seconds after you enter the boot command, the init system stops with an error message such as Mounting boot media: failed.
Then continue in the Emergency Recovery Shell.

Alpine Emergency Recovery Shell

Coping the ISO to /dev/shm .

/dev/shm is a special file system in Unix-like operating systems, specifically designed for shared memory. It provides a temporary, high-speed storage area that is accessible to all processes on the system.

mount /dev/vda1 /media/vda1
cp /media/vda1/alpine-virt-3.20.3-x86_64.iso /dev/shm
umount /dev/vda1
mount -o loop -t iso9660 /dev/shm/alpine-virt-3.20.3-x86_64.iso /media/cdrom
CTRL-D or type: exit

This will boot finally the Alpine Installation Mode

Installing Alpine v3.20.3

Let’s start with: setup-alpine

Your setup will look like this: Debian Installation

Hostname: {{hostName}}
Domain name: {{domainName}}

When it ask for a repository mirror: use automatically find best mirrors.
It takes long, but I had sometimes no connection if I choose  1.

Just follow the instructions, pick the correct device, such as /dev/vda

Time to reboot!

(Optional) After the reboot

  • Configure SSH
  • Create Snapshot in your TransIP Control Panel
  • Enable community in your /etc/apk/respositories
  • Install docker and docker-compose
  • Attach Big Storage and use that as your Docker installs
  • Replace /var/lib/docker with the directory from Big Storage

Rest

Congratulation for installing Alpine in your VPS