WSL Alpine Podman ์„ค์น˜ ๋ฐ ๊ตฌ์„ฑ

์†Œ๊ฐœ Podman ์†Œ๊ฐœ Podman์€ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์˜คํ”ˆ ์†Œ์Šค ๋„๊ตฌ๋กœ, Red Hat์—์„œ ๊ฐœ๋ฐœ. Docker์™€ ์œ ์‚ฌํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง€๋งŒ, ๋ช‡ ๊ฐ€์ง€ ์ค‘์š”ํ•œ ์ฐจ๋ณ„์ ์ด ์žˆ๋‹ค. Podman์€ ์ฃผ๋กœ ๋ฆฌ๋ˆ…์Šค ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ๋˜๋ฉฐ, ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ƒ์„ฑ, ์‹คํ–‰, ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค. ์ฃผ์š” ํŠน์ง• ๋ฃจํŠธ๋ฆฌ์Šค ์‹คํ–‰: Podman์€ ๋ฃจํŠธ ๊ถŒํ•œ ์—†์ด ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์–ด ๋ณด์•ˆ์„ฑ์ด ๋†’๋‹ค. ์ด๋Š” ์‹œ์Šคํ…œ์˜ ๋ณด์•ˆ์„ ๊ฐ•ํ™”ํ•˜๋Š” ๋ฐ ํฐ ๋„์›€์ด ๋œ๋‹ค. ๊ฒฝ๋Ÿ‰ํ™”: Podman์€ ๊ฒฝ๋Ÿ‰ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ง€์›ํ•˜์—ฌ ์‹œ์Šคํ…œ ์ž์›์„ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋Š” ํŠนํžˆ ๋ฆฌ์†Œ์Šค๊ฐ€ ์ œํ•œ๋œ ํ™˜๊ฒฝ์—์„œ ์œ ๋ฆฌํ•˜๋‹ค. ...

2025-08-26 ยท (updated 2025-08-28) ยท 355 words

busybox - unix command tools

Intro busybox๋Š” ์ž‘๊ณ  ๊ฐ€๋ณ๊ณ  ๋น ๋ฅธ POSIX ํ‘œ์ค€ ์œ ํ‹ธ ๋ชจ์Œ์ด๋‹ค. docker์—์„œ ์—ฌ๋Ÿฌ ๊ฐ€์ง€๋กœ ์‘์šฉํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์‘์šฉ ์ž„๋ฒ ๋””๋“œ ์‹œ์Šคํ…œ์— ๋นŒ๋“œํ•˜๊ธฐ windows ํ™˜๊ฒฝ์—์„œ Unix Shell, command ์‚ฌ์šฉํ•˜๊ธฐ HTTP ์›น์„œ๋ฒ„๋กœ ๋Œ๋ฆฌ๊ธฐ Kubernates์— init container๋กœ ์‚ฌ์šฉํ•˜๊ธฐ Docker ๊ฐ€์ƒ์ปจํ…Œ์ด๋„ˆ ๋ณผ๋ฅจ์„œ๋ฒ„(์Šคํ† ๋ฆฌ์ง€)๋กœ ์‚ฌ์šฉํ•˜๊ธฐ Busybox์— ๊ด€ํ•˜์—ฌ ๋†€๋ž๊ฒŒ๋„ busybox๋Š” httpd๋ฅผ ๋‚ด์žฅํ•˜๊ณ  ์žˆ๋‹ค. ๋ฌผ๋ก  ๋Œ€๊ทœ๋ชจ ์ฒ˜๋ฆฌ๋Š” ๊ณค๋ž€ํ•˜๋‹ค. ๋‚ด์žฅ๋œ grep๋„ ๊ธฐ๋ณธ ๊ธฐ๋Šฅ๋งŒ ์žˆ๋‹ค. ๋Œ€์šฉ๋Ÿ‰ ํŒŒ์ผ ๊ฒ€์ƒ‰์„ ์จ์•ผํ•œ๋‹ค๋ฉด ํšจ์œจ์ด ์ข‹์ง€ ์•Š์œผ๋ฏ€๋กœ gnu grep์„ ์–น์–ด์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. busybox๋Š” glibc, musl ๋“ฑ์„ ์ง€์›ํ•˜๋Š” ๋ฒ„์ „์ด ์žˆ๋‹ค. ์ด๋ฅผ ํ™œ์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ๊ฐœ์˜ ํ”„๋กœ๊ทธ๋žจ์„ ๋„ฃ์–ด์•ผํ•  ๋•Œ ๊ณต์œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์–ด ํšจ์œจ์ ์ด๋‹ค. alpine ๋ฆฌ๋ˆ…์Šค๊ฐ€ busybox + musl + os env ์ด๋ฏ€๋กœ ์ž์‹ ๋งŒ์˜ ์ด๋ฏธ์ง€๋ฅผ ์ œ์ž‘ํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค. ๊ธฐ๋ณธ์ ์ธ utf-8์ด ์ง€์›๋˜์ง€๋งŒ ์ถœ๋ ฅ์€ ๊ดœ์ฐฎ๊ณ  ์ž…๋ ฅ์€ ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค. sh, echo, vi ๋„ ๊ฐ€๋ณ๊ฒŒ ์“ฐ๊ธฐ๋Š” ์ข‹์œผ๋‚˜ utf-8 ํ•œ๊ธ€์ž…๋ ฅ์ด ์•ˆ๋œ๋‹ค. ์ด๋ฅผ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” bash, echo, vi๋ฅผ ์ •์ ์ปดํŒŒ์ผ ๋ฐ”์ด๋„ˆ๋ฆฌ๋กœ ๋Œ€์ฒด ๋˜๋Š” ๋„์ปคํ—ˆ๋ธŒ(DockerHub)์˜ toybox๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค. utf-8 ์ž…์ถœ๋ ฅ์„ ๋ชจ๋‘ ์ง€์›ํ•œ๋‹ค. ์‹ฌ์ง€์–ด ์‚ฌ์ด์ฆˆ๊ฐ€ ๋” ์ž‘๋‹ค. utf-8์˜ ์ž…์ถœ๋ ฅ ํ™˜๊ฒฝ์ด ๋ชจ๋‘ ํ•„์š”ํ•˜๋‹ค๋ฉด toybox๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ๋‚ซ๋‹ค. busybox(์•ฝ1.2MB)๋‚˜ toybox(์•ฝ764K)๋Š” ์ •๋ง ๊ฐ€๋ณ๊ฒŒ ์‹คํ–‰ํ•˜๊ณ  ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์ด๋‹ค. ๊ฒฐ๋ก ์ ์œผ๋กœ ์ด๊ฒƒ์— ๋Œ€ํ•œ ํ™œ์šฉ์€ ๊ฐœ๋ฐœํ™˜๊ฒฝ์ด๋‚˜ ํฐ๊ทœ๋ชจ์˜ ์‹คํ–‰ํ™˜๊ฒฝ๋ณด๋‹ค๋Š” ์ž‘๊ณ  ๊ฐ€๋ฒผ์šด ํ™˜๊ฒฝ์—์„œ ํšจ์œจ์ ์ธ ์šด์šฉ์ด ํ•„์š”ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. ์œˆ๋„์šฐ์ฆˆ์—์„œ ์œ ๋‹‰์Šค ๋ช…๋ น ํ™˜๊ฒฝ ๊ตฌ์„ฑ Busybox64๋Š” ์œˆ๋„์šฐ์ฆˆ ํ™˜๊ฒฝ์—์„œ busybox๋ฅผ ํ†ตํ•ด unix ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ์œ„ํ•œ ์ข‹์€ ๋ฐฉ๋ฒ•์ด๋‹ค. ์œˆ๋„์šฐ์ฆˆ์—์„œ ๊ฐ„๋‹จํžˆ ํŒŒ์ผ ํŽธ์ง‘, ์ด๋™, ํŒŒ์ผ ์กฐ์ž‘ ๋“ฑ ์ต์ˆ™ํ•œ 172๊ฐœ์˜ ๋ช…๋ น์–ด ์‚ฌ์šฉ๊ฐ€๋Šฅ. Shell Script ์ž‘์„ฑ๋„ ๊ฐ€๋Šฅ : sh, bash, vi ๋“ฑ์œผ๋กœ ์—ฌ๋Ÿฌ ์ž‘์—… ์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ. ๊ฐ€๋ฒผ์šด ์ž‘์—…๋งŒ ํ•œ๋‹ค๋ฉด cygwin, msys2, git for windows ๋“ฑ์ด ๊ตณ์ด ํ•„์š”์น˜ ์•Š๋‹ค. busybox.exe(32bit), busybox64.exe(64bit), busybox64u.exe (64bit unicode) ์ค‘ ์„ ํƒํ•ด์„œ ์‚ฌ์šฉํ•œ๋‹ค. ์„ค์น˜ ๋‹ค์šด๋กœ๋“œ: https://frippery.org/busybox/ ์‚ฌ์šฉ๋ฒ• ์ ๋‹นํ•œ ์œ„์น˜์— ๋‹ค์šด๋กœ๋“œ ํ•œ ํ›„ PATH์— ์ถ”๊ฐ€ํ•ด ์ค€๋‹ค. command ์ฐฝ ๋˜๋Š” Powershell์„ ์‹คํ–‰ํ•œ๋‹ค. busybox.exe bash -l : bash ์‰˜ ํ™˜๊ฒฝ์œผ๋กœ ํ„ฐ๋ฏธ๋„์ด ์‹คํ–‰๋œ๋‹ค. (sh, ash, bash ์ง€์›) busybox.exe --list : ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” unix ๋ช…๋ น๋“ค ๋ชฉ๋ก (sed, awk, grep, make, wget, vi, ..) busybox.exe --help : ๋„์›€๋ง REFERENCE busybox home: https://frippery.org/busybox/ busybox github: https://github.com/rmyorston/busybox-w32 Using the BusyBox Docker Image for Building Applications : A Complete Guide https://www.sohamkamani.com/docker/busybox-guide/

2025-08-22 ยท (updated 2025-08-24) ยท 306 words

Alpine Linux Install

Intro ์„ค์น˜์—๋Š” ํฌ๊ฒŒ ์ผ๋ฐ˜์ ์ธ ์„ค์น˜ ๋ฐฉ๋ฒ•๊ณผ Windows WSL์— ์˜ฌ๋ฆฌ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค. ์ผ๋ฐ˜ ์„ค์น˜ ISO ์ด๋ฏธ์ง€๋ฅผ ๋ถ€ํŒ…์šฉ USB๋กœ ์ž‘์„ฑ usb ๋ถ€ํŒ… ๋ฐ ์„ค์น˜ ํŒจํ‚ค์ง€ ์„ค์น˜ ๋ฐ ์„ค์ • ์œˆ๋„์šฐ์ฆˆ ์„ค์น˜ ( WSL2 + Alpine ) ์œˆ๋„์šฐ์ฆˆ 10, 11 ๊ธฐ๋ฐ˜, WSL2 ์„ค์น˜ ๋˜๋Š” ์—…๊ทธ๋ ˆ์ด๋“œ: c:> wsl --update Alpine-Wsl ์„ค์น˜ (Microsoft Store) ์„ค์น˜ ํ›„ ์‹คํ–‰ ์•„์ด์ฝ˜ ์‹คํ–‰ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋‹ค์Œ ๋ฌธ์„œ ์ฐธ์กฐ: docker windows Upgrade ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ •๋ฆฌํ•œ๋‹ค. alpine-wsl์—์„œ๋Š” ์—…๊ทธ๋ ˆ์ด๋“œ๊ฐ€ ๋˜์ง€๋งŒ ๋ฒ„์ „์ •๋ณด๋Š” ๊ทธ๋Œ€๋กœ์ด๋‹ค. $ cat /etc/alpine-release # Check Current Version $ su - # apk update && apk upgrade # update & upgrade current version OR # apk -U upgrade # sudo setup-apkrepos # Enter `:e` for edit and change version what you want https://dl-cdn.alpinelinux.org/alpine/v3.18/main/ https://dl-cdn.alpinelinux.org/alpine/v3.18/community/ https://dl-cdn.alpinelinux.org/alpine/edge/testing/ :wq # sudo apk update # sudo apk upgrade ---available # sync # reboot ... $ cat /etcalpine-release $ uname -r ๊ด€๋ จ ๋ฌธ์„œ lua-language-server ์„ค์น˜: alpine lua language server ์„ค์น˜ REFERENCE Alpine Install: https://wiki.alpinelinux.org/wiki/Installation Alpine Tutorial and Howtos: https://wiki.alpinelinux.org/wiki/Tutorials_and_Howtos

2023-12-30 ยท 155 words