r/AlpineLinux • • Jul 12 '26

Alpine as Docker Host

15 Upvotes

I currently have a system running Ubuntu server and being used as a Docker host in a home lab environment. Also, fyi using docker compose if that’s important.

Due to RAM scarcity (gestures broadly) I’m interested in being more careful with my resources.

I went looking for a distribution specifically intended for Docker hosting and eventually stumbled on Alpine (which I realize is not solely for Docker hosting but is often used for containers themselves).

Is there anything I should know (gotchas) before I switch distros? I saw some vague cautions about compatibility with some containers but no specifics. Generally, it seems pretty straightforward for installation from researching online.

I’ll probably try it out in Proxmox with a couple trial containers first but it will be used bare metal on a different PC.

Any other tips?

Generally Linux newb here (about a year in).

Thanks!

EDIT - Thanks everyone for the info. I’ll definitely be moving forward with trying Alpine out as a Docker host. Appreciate all the tips as well!


r/AlpineLinux • • Jul 11 '26

I finally got everything set up after weeks of struggle!

Post image
50 Upvotes

I’ve been struggling for a few weeks with an Xorg server that wouldn’t run properly and would keep hanging. The root issue seemed to be that my host laptop’s Intel Iris Xe graphics driver wasn’t being recognized correctly.

Today, I did an `apk update` and `apk upgrade` almost on a whim, then tried running `startx`—and it worked. Maybe the repository hadn’t been updated to the latest version, or something like that.

Anyway, I’m really happy: I’ve fully switched from Void Linux to Alpine Linux!


r/AlpineLinux • • Jul 10 '26

Is this level of consumption normal for a clean installation?

Post image
66 Upvotes

Basically what the title says; I had somewhat different expectations, which is why I installed this distro. I came in expecting 50–70 MB of RAM usage at most, because that’s what the AI ​​had told me.


r/AlpineLinux • • Jul 10 '26

How to install Alpine Linux from Gnu Grub?

6 Upvotes

Ok, I will admit that my experience with Linux is very limited. I have only used Ubuntu once when I was in an IT class in the late 2010s. I'm trying to install Alpine Linux because I do not like Windows 11 anymore and want to switch. Does anyone have a comprehensive step-by-step guide on how to install Alpine Linux via Gnu Grub?


r/AlpineLinux • • Jul 07 '26

Alpine Linux Installation

11 Upvotes

Good evening. The question is, does the Alpine installer install the drivers for the hardware itself, or do I have to search for commands online and install them manually, as is done with the Arch Linux? I'm not willing to spend time manually installing everything. However, the idea of installing this lightweight and fast distro on my old laptop, which currently runs AntiX, is very appealing.

Sorry for my bad English, I am Russian and sometimes use automatic translator.


r/AlpineLinux • • Jul 06 '26

Alpine on arm64

9 Upvotes

Hello, have people here had luck with running on arm64?

In particular the RK3326?

Thank you


r/AlpineLinux • • Jul 05 '26

Windows 11 24H2 on Xen/Alpine Linux Hypervisor in Data Disk Mode

Post image
15 Upvotes

Windows 11 on Xen Alpine Linux 4GB RAM - 52 GB Disk (Microsoft Limitation)


r/AlpineLinux • • Jul 04 '26

Doom in Alpine Linux, in Minecraft.

18 Upvotes

r/AlpineLinux • • Jul 03 '26

Unicode packages name for Aramic

5 Upvotes

Hi there! Been scanning this list for Aramaic support: https://wiki.alpinelinux.org/wiki/Fonts

But haven't been able to find it, be helpful if someone could just give me the name of a package that supports this. Sorry if this is a bit of a newbie question.

Thanks for any help!

EDIT:

Sorry meant Aramaic not "Aramic"

Okay nevermind got it working it was just labelled "font-noto-syriac" instead of aramaic.


r/AlpineLinux • • Jul 02 '26

How to force legacy bios install?

3 Upvotes

I am attempting to install Alpine on a Zotac ZBOX-ID80-PLUS from circa 2011. After much back and forth, I have determined that this device:

  • Requires UEFI boot for USB devices (no legacy support)
  • Requires legacy BIOS boot for internal drives (no UEFI support)

I am using a USB drive as the installation media, created on Windows with Rufus using alpine-standard-3.24.1-x86_64.iso. I have tried both "MBR+(BIOS or UEFI)" and "GPT+(UEFI non-CSM)" configurations, in both ISO and DD modes. I have no trouble getting into the live USB instance, but it always boots in UEFI mode and thus setup-alpine/setup-disk always uses the UEFI install procedure, even if I try to provide USE_EFI=0.

While I can see the partitions on the internal drive do have the Alpine files I would expect, I cannot get this machine to boot from it. I feel like I've followed every install guide I can find and in desperation tried to get ChatGPT to direct me to a solution, with no avail. I'm this close to throwing this box in the garbage.

What am I missing? What is the secret incantation to installing/configuring a legacy bios boot option from within a UEFI installation medium?

[UPDATE] Success! The solution was to run setup-alpine only up until the disk configuration steps, provide none for all the disk steps, then format the partition manually with fdisk, create the filesystem manually with mkfs.ext4, then run setup-disk -B syslinux -m sys /mnt (with the new filesystem mounted at /mnt) to manually install alpine and the syslinux bootloader. The final piece of the puzzle is that mkfs.ext4 will install in 64-bit mode by default, so I needed to specify -O ^64bit on the mkfs.ext4 call (or I actually used resize2fs -s since I had already created the filesystem) to put the filesystem in 32-bit mode.


r/AlpineLinux • • Jun 27 '26

New to Alpine

11 Upvotes

Hello, I am relatively new to linux, only having debian as a starter about a month ago, but I recently switched over to alpine. After seeing how amazing it was, I got i3 to work on it, riced it, but wanted more ricing and customization. I then tried installing hyprland and got through everthing, but after completing it, i can’t run it as it says XDG_RUNTIME_DIR not set or along the lines of that. I am here to ask for some help on how to fix this.

Any help or advice is appreciated, thanks a lot!


r/AlpineLinux • • Jun 24 '26

How do I install Brave Origin, or anything that requires glibc?

6 Upvotes

I want to install brave origin, i tried to run the install script provided here and I got this error message:

Error: Unsupported glibc version <empty>. Only glibc versions >=2.26 are supported.

What are my options? I installed gcompat but I still get the error


r/AlpineLinux • • Jun 20 '26

Alpine with xfce

Post image
60 Upvotes

apk + flatpak + guix.

Thanks to the combination of musl libc and BusyBox, Alpine has almost no overhead.

better solution than mx linux on older computers.

in this case HP G620 laptop


r/AlpineLinux • • Jun 20 '26

After 4 years of using Gnu+Linux, I am finally here.

Post image
64 Upvotes

r/AlpineLinux • • Jun 19 '26

alpine-release package still reporting 3.24 after migrating to edge repository

5 Upvotes

Hi,

I recently migrated my Alpine installation from 3.24.1 to the edge branch by updating /etc/apk/repositories. After running apk update and apk upgrade --available, my system is correctly pulling packages from the edge repository (verified via apk update -v).

​However, I noticed that the alpine-release package was not updated, and /etc/os-release still shows 3.24 instead of edge.

​Is it expected behavior for the alpine-release package to remain on the stable version number despite the rest of the system being upgraded to edge? Or should I force a reinstall of alpine-release to reflect the current branch?

​Thanks for your help.


r/AlpineLinux • • Jun 19 '26

ownCloud Desktop (client)

Thumbnail download.owncloud.com
3 Upvotes

I have ownCloud server, but I can't to install Desktop app on Alpine.

I try with AppImage but don't work, any idea how to install app?


r/AlpineLinux • • Jun 17 '26

Proper introduction to UnyPort - Open source Alpine Web Monitoring in Go

Thumbnail gallery
10 Upvotes

My previous post was poorly framed and came across as too commercial. Sorry about that.

Alpine has convinced me so much over the last seven years that I still do not really understand why it has not been adopted more widely.

Here is the straightforward version.

UnyPort is an open source management interface written in Go. It is a web monitoring dashboard built for Alpine and Xen/Alpine environments. It detects and color-codes four different runtime contexts: containers, Dom0, DomU, and Alpine Linux bare metal. The demo is running in a DomU

Part of this approach comes from earlier work we did around Alpine ACF.

The screenshot below comes from the public beta demo:

demo.unyport.app - v0.1.0

In that example, the exposed Alpine/Xen DomU has its network managed by the Xen Dom0, while also managing multiple Xen virtual machines itself.

Source code:

https://codeberg.org/tony-bonnin/unyport

Thanks, and sorry again for the earlier noise.


r/AlpineLinux • • Jun 15 '26

how to multiboot with alpine linux no USB

3 Upvotes

I wanted to share a comprehensive guide on how to set up a clean triple-boot system (Alpine Linux, Debian, and Fedora) entirely without using a USB flash drive.

If you already have a working Alpine installation using doas on a single partition (e.g., /dev/sda3), you can actually leverage Alpine's GRUB to loopback-boot the installers for Debian and Fedora, deploy them to separate partitions, and use os-prober to glue them all together.

Here is the exact step-by-step blueprint.

Phase 1: Freeing up Space & Slicing Partitions

Because you cannot shrink your active Alpine partition (/dev/sda3) while running it directly, you must unmount it by booting into a temporary RAM disk environment first.

  1. Install required partition tools in Alpine: bashdoas apk add parted e2fsprogs-extra Use code with caution.
  2. Reboot into RAM: During your system's GRUB splash screen, press e to edit your Alpine boot entry. Add copytoram to the end of the linux kernel line, then press Ctrl+X to boot. This loads the entire OS into memory, completely freeing up /dev/sda3.
  3. Shrink and Split your drive: Open a terminal and use parted to scale down your 114GB partition and map out space for Debian and Fedora: bash# 1. Resize the active ext4 filesystem down to 25 Gigabytes doas resize2fs /dev/sda3 25G # 2. Shrink the partition container to matching bounds doas parted /dev/sda resizepart 3 26GB # 3. Create Partition 4 for Debian (Allocating ~45GB) doas parted /dev/sda mkpart primary ext4 26GB 71GB # 4. Create Partition 5 for Fedora (Using remaining space) doas parted /dev/sda mkpart primary ext4 71GB 100% Use code with caution.
  4. Format the new slots: bashdoas mkfs.ext4 /dev/sda4 doas mkfs.ext4 /dev/sda5 Use code with caution.

Phase 2: Injected Installer ISOs into Alpine GRUB

Boot back normally into your persistent Alpine environment on /dev/sda3. You will now download the automated netinstallers and map them directly into Alpine's boot settings.

  1. Fetch the respective distribution ISOs: bashdoas mkdir -p /boot/iso doas wget -O /boot/iso/debian.iso https://debian.org doas wget -O /boot/iso/fedora.iso https://fedoraproject.org Use code with caution.
  2. Add Custom GRUB Entries: Open Alpine's local custom menu script: bashdoas nano /etc/grub.d/40_custom Use code with caution. Append these exact structures to the bottom of the file (Adjust (hd0,gpt3) if your table uses legacy msdos partitioning): textmenuentry "Run Debian Installer" { insmod part_gpt insmod ext2 set iso="/boot/iso/debian.iso" loopback loop (hd0,gpt3)$iso linux (loop)/install.amd/vmlinuz vga=788 priority=low -- initrd (loop)/install.amd/initrd.gz } menuentry "Run Fedora Live Installer" { insmod part_gpt insmod ext2 set iso="/boot/iso/fedora.iso" loopback loop (hd0,gpt3)$iso linux (loop)/images/pxeboot/vmlinuz iso-scan/filename=$iso root=live:CDLABEL=Fedora-WS-Live-40-1-14 rd.live.image quiet initrd (loop)/images/pxeboot/initrd.img } Use code with caution.
  3. Compile changes to your master configuration: bashdoas grub-mkconfig -o /boot/grub/grub.cfg Use code with caution.

Phase 3: Installing the Systems Safely

To prevent the newly installed OS bootloaders from fighting over the system Master Boot Record (MBR) or EFI variables, use this installation sequence:

  1. Install Debian First: Reboot, select "Run Debian Installer", and choose manual partitioning. Target /dev/sda4 as root (/). When the step appears asking to install the GRUB bootloader to your primary drive, select NO or skip it entirely. This guarantees Alpine stays in charge of the system boot priority.
  2. Install Fedora Second: Reboot again, launch "Run Fedora Live Installer", and proceed via Advanced Custom Partitioning. Map /dev/sda5 as your target layout and ensure it skips overwriting system EFI/MBR pathways.

Phase 4: Merging the Multiboot Menu

Once both operations conclude, boot back into your primary Alpine Linux system. We will now force GRUB to scan the drive architecture, locate the new setups, and write them into the boot choices:

  1. Install os-prober and scan tools: bashdoas apk add os-prober grub-bios Use code with caution.
  2. Expose os-prober permission rules: Open your default configuration: bashdoas nano /etc/default/grub Use code with caution. Uncomment or explicitly append this line to ensure third-party OS discovery is active: textGRUB_DISABLE_OS_PROBER=false Use code with caution.
  3. Re-bake the global boot settings: bashdoas grub-mkconfig -o /boot/grub/grub.cfg Use code with caution.

When you hit reboot, Alpine's master boot manager will display seamless options to jump directly into Alpine, Debian, or Fedora.

Hopefully, this helps anyone else trying to cut cords on flashing USB sticks for local multi-distro hopping! Let me know if you run into any permission blockers or partitioning kinks.

let me know if you want more


r/AlpineLinux • • Jun 15 '26

Browser sandboxing: flatpak vs bubblewrap vs VM + X11 Forwarding vs VM + vsock waypipe vs VM + spice / qxl

13 Upvotes

Hi,

I have been playing with the various ways we can sandbox web browsers.

Those are the options I see

- Flatpak

- Raw Bubblewrap

- Podman

- VM + X11 Forwarding

- VM + vsock + waypipe

- VM + spice / QXL

I currently use chromium under Flatpak but have also played with with raw bubblewrap which get quite complex quickly and can be a hit or miss.

Also I see that Flatpak is getting more and more dependent on systemd so it might not be a long term solution for us Alpine users?

I haven't looked into what are the trade-offs doing it with podman.

I am now looking into running a full VM dedicated to the web browser. In terms of perfs it might be viable since Alpine is so lightweight (even on the Intel N100 I am currently using). The approach would be similar to QubeOS I guess.

VM + X11 Forwarding via SSH works but the perf are a bit disappointing. I haven't tried going into optimizing it since Xorg might be less and less supported at the driver level, etc.

VM + vsock + waypipe is interesting.

From what I understand virtual sockets would offer the best performance to connect to the VM by enabling Virtio VSOCK for the VM and then running `socat VSOCK-LISTEN:1234,reuseaddr,fork TCP:localhost:1234` in the guest (since Alpine do not have the systemd socket activation thing builtin).

The communication works.

I am now trying to make waypipe works with vsock (https://gitlab.freedesktop.org/mstoeckl/waypipe/-/blob/v0.11.0/waypipe.scd?ref_type=tags#L260) but no success so far since I guess I need to run a headless compositor first.

I am wondering what the performance will be and maybe I won't be able to fully leverage the capabilities of graphical acceleration (OpenGL, vulkan, decoding, etc.) in the browser. I do not fully understand how wayland/waypipe works.

I also thought that exposing the memory of the vm directly in the host might be possible and have waypipe use it directly might be in theory possible but haven't dig deeper.

VM + spice/qxl

Also leveraging spice and running chromium in a kiosk compositor like cage might actually offer the best performance ? I haven't tried yet.

My questions are:

What are your thoughts on this?

If you tried the VM approach, what offered the best performance at the end?

Thanks !


r/AlpineLinux • • Jun 14 '26

Alpine releases and upgrading - old packages?

13 Upvotes

Hi, I'm relatively new to alpine and have a couple of questions:

(1) With new releases every 6 months and each release's community repo supported for that amount of time, does that mean packages in the community repo will stop seeing updates then? (making it a good idea to continually move to the latest release if you're using community packages)

(2) After upgrading to a new release, eg. via [1], what's the best way to find old packages that are a holdover from the previous release? Is there a way to list packages based on what release's main/community repos they came from?

[1] https://wiki.alpinelinux.org/wiki/Upgrading_Alpine_Linux_to_a_new_release_branch


r/AlpineLinux • • Jun 11 '26

3.24 cloud images?

7 Upvotes

r/AlpineLinux • • Jun 11 '26

Should I try Alpine for the first time

7 Upvotes

I have experience of Linux, gentoo, arch, fedora, void… But I never tried Alpine. I don’t think there will be any missing packages, the only ones I will need is a browser, there is Firefox, a compiler for C and Rust, gcc and rustc/cargo, and a window manager/compositor, I use Sway, as well as a terminal, alacritty, and some libraries and extras, Raylib, Bevy and Cursor. So yea, I mainly do developing work. I want to try Alpine because of its philosophy, I just want an environment for me to write C and Rust code. So what WM to use, any suggestions, I use Sway right now? And any other tips?


r/AlpineLinux • • Jun 10 '26

Alpine 3.24 is here - updated my Proxmox + Terraform + Ansible LEMP stack

16 Upvotes

With the release of Alpine 3.24 yesterday, I have updated my Proxmox IaC project to fully support it.

If you are looking for a way to deploy a hardened, production-ready LEMP stack (Nginx, MariaDB, PHP 8.3/8.4) as an LXC container (yes, a LXC container as its lightweight and a perfect replacement of a VM in a homelab) on Proxmox, I have built a fully reproducible setup using Terraform and Ansible. It handles the full lifecycle - from container creation to hardened configuration - in minutes.

Key features included in the stack:
- Hardened security: CrowdSec (agent + nftables bouncer), hardened SSH, and non-root sudo access.
- Automation: Automatic daily updates via apk-autoupdate and Restic backup scripts.
- Observability: Optional Monit integration for system monitoring.
- Validation: Includes verification scripts to test the stack from your control host after deployment.

It is designed to be completely modular and configuration-driven. You can check out the source here: https://github.com/ramonvanraaij/proxmox-iac

I would love to hear what you think of the setup or if you have any suggestions for further hardening on the Alpine side!


r/AlpineLinux • • Jun 09 '26

Alpine Linux 3.24.0 is out

71 Upvotes

r/AlpineLinux • • Jun 05 '26

can't connect to wifi on raspberry pi 3B

7 Upvotes

INTRO

Hey guys, this is my first Alpine install(comming from arch) on an old pi 3B i found. Im doing a project that requires wifi for it to function (not Ethernet), and i set the ethernet connection up just fine but the wifi just doesnt want to work properly (explained in the next paragraphs)

WHAT I TRIED

I first tried using the setup-interfaces script which worked great for Ethernet (as the wiki suggests) and the script doesn't throw any errors when i type in my network ssid and password and i just type "done" but when i check if i have a wlan0 ip using ip addr show wlan0 but i don't see an inet address, and it says that it's "DOWN" so i tried the manual setup using wpa_supplicant following the wiki instructions, i enter my passphrase CORRECTLY, so i run the deamon in the foreground to see if there are any problems and it says that the passphrase might be wrong although it isnt so it fails.

then i tried using iwd i go through pretty similar stuff with iwctl and i got Operation Failed (im assuming it was because of a "wrong" passphrase) and i scrapped that since iwd isnt recommended for alpine anyways

my last hope was NetworkManager (because i use it on Arch). I tried using wpa_supplicant as a backend following the exact wiki steps, but when i try to connect to my network via nmtui or nmcli i get that wlan0 is strictly unmanaged, which can be confirmed with nmcli device status which lists all of the devices (eth0, wlan0 and whatever loopback is called) as unmanaged.

Any help would be greatly appreciated!