Sign inSign up

jlcox1970/side-loader

By jlcox1970

•Updated 9 months ago

A tiny, static init-container utility for Kubernetes.

Image
0

440

jlcox1970/side-loader repository overview

⁠side-loader

docker.io/jlcox1970/side-loader is a tiny, static init-container utility for Kubernetes.

It recursively copies files from one directory to another while preserving permissions, symlinks, and ownership — with optional UID/GID overrides.


⁠What It’s For

  • Initializing writable volumes
  • Copying baked-in image data to a PVC or emptyDir
  • Preparing directories for non-root containers

⁠Configuration (Environment Variables)

VariableDefaultDescription
SRC_DIR/srcSource directory
DST_DIR/destinationDestination directory
UIDunsetOverride file UID
GIDunsetOverride file GID

Supports loading from a .env file automatically if present.


⁠Example (Kubernetes Init Container)

initContainers:
  - name: side-loader
    image: docker.io/jlcox1970/side-loader
    env:
      - name: SRC_DIR
        value: /app/defaults
      - name: DST_DIR
        value: /data
      - name: UID
        value: "1000"
      - name: GID
        value: "1000"
    volumeMounts:
      - name: data
        mountPath: /data

⁠Example (docker-compose)

version: "3.9"

services:
  side-loader:
    image: docker.io/jlcox1970/side-loader
    env_file:
      - .env
    volumes:
      - ./data:/data
    environment:
      DST_DIR: /data

Example .env:

SRC_DIR=/src
UID=1000
GID=1000

⁠Notes

  • Symlinks are preserved (not dereferenced)
  • Ownership is applied after file creation
  • Permission-related chown errors are ignored
  • Designed for scratch/distroless images

Minimal, predictable, and purpose-built for init containers.

Tag summary

Content type

Image

Digest

sha256:8c5483e69…

Size

1.4 MB

Last updated

9 months ago

docker pull jlcox1970/side-loader:1.0.1