Practical Engineering
open-menu closeme
Engineering
github linkedin rss
  • Who Modified My Program in Bottlerocket?

    calendar Sep 11, 2025 · 2 min read · Linux Bottlerocket  ·
    Share on: twitter copy

    There are a few programs we install in Bottlerocket that cannot be built from source. For these programs, we download the binary from S3 and install it using an RPM spec like this: 1# foo.spec 2Name: %{_cross_os}foo 3 4Source0: foo 5 6%install 7install -d %{buildroot}%{_cross_sbindir} 8install -D -p -m 0755 %{S:0} …


    Read More
  • Introducing bottlerocket-extra-kit: Essential debugging tools for Bottlerocket

    calendar Sep 1, 2025 · 1 min read · Linux Bottlerocket  ·
    Share on: twitter copy

    Bottlerocket is a Linux-based operating system optimized for hosting containers. We use Bottlerocket to run millions of containers each day. There are three key differences between Bottlerocket and common Linux distributions like Amazon Linux 2023: The rootfs is read-only. There is no package manager (e.g., yum) in …


    Read More
  • Tips for Building Bottlerocket AMIs

    calendar Aug 20, 2025 · 4 min read · Linux Bottlerocket  ·
    Share on: twitter copy

    Bottlerocket is a Linux-based operating system optimized for hosting containers. At my work, we migrated from Amazon Linux to Bottlerocket and experienced the following benefits: Developer-friendly: Easy to understand and fast to build. RPM spec and configuration TOML files are all you need. Every developer can build a …


    Read More
  • x509: certificate signed by unknown authority? Maybe the cert pool is empty

    calendar Apr 15, 2025 · 6 min read · Linux Container SELinux Bottlerocket  ·
    Share on: twitter copy

    I recently worked on getting amazon-ssm-agent to run inside containers on Bottlerocket. During that process, I ran into a TLS issue connecting to amazonaws.com. The root cause turned out be interesting and we'll walk through it in this post. Running amazon-ssm-agent in a container: why and how? To enable sessions …


    Read More

Peng Zhang

Software Engineer

Recent Posts

  • Who Modified My Program in Bottlerocket?
  • Introducing bottlerocket-extra-kit: Essential debugging tools for Bottlerocket
  • Tips for Building Bottlerocket AMIs
  • Working Knowledge of Linux Memory: Concepts
  • Fix Rare Case Where Primary ENI Does Not Serve Default Traffic
  • SELinux Concepts
  • Modern Go idioms
  • A Few Shell Surprises

Tags

GO 16 LINUX 13 ALGORITHMS 8 INTERVIEW 7 BOTTLEROCKET 4 GUIDE 3 CONTAINER 2 DISTRIBUTED-SYSTEM 2 SELINUX 2 WEB 2 COMPUTER-ARCHITECTURE 1 CONCURRENCY 1 CRYPTOGRAPHY 1 DATABASES 1
All Tags
ALGORITHMS8 BOTTLEROCKET4 COMPUTER-ARCHITECTURE1 CONCURRENCY1 CONTAINER2 CRYPTOGRAPHY1 DATABASES1 DISTRIBUTED-SYSTEM2 EC21 GO16 GUIDE3 INTERVIEW7 LINUX13 SELINUX2 SHELL1 TESTING1 WEB2
[A~Z][0~9]
Peng Zhang

Copyright 2022-  PENG ZHANG. All Rights Reserved

to-top