알파인 리눅스(Alpine Linux)란? :: 행복한 프로그래머

posted by 쁘로그램어 2017. 12. 21. 12:14

안녕하세요. 행복한 프로그래머입니다.


Alpine 리눅스에 대한 내용을 포스팅합니다.

docker를 사용하다보면 오픈 소스 진영에서 alpine 리눅스를 자주 사용하더라구요.


# 알파인 리눅스(Alpine Linux)란?

Alpine Linux는 보안, 단순성 및 자원 효율성을 높이는 고급 사용자를 위해 설계된 독립적이고 비상업적인 범용 Linux 배포판 매우 간소화된 리눅스 배포판이며 apk라는 자체 패키지 관리자를 사용한다. 


https://alpinelinux.org/about/에 접속하면, apline linux에 아래와 같이 설명하고 있습니다.

About

Alpine Linux is an independent, non-commercial, general purpose Linux distribution designed for power users who appreciate security, simplicity and resource efficiency.


Small

Alpine Linux is built around musl libc and busybox.

This makes it smaller and more resource efficient than traditional GNU/Linux distributions. A container requires no more than 8 MB and a minimal installation to disk requires around 130 MB of storage. Not only do you get a fully-fledged Linux environment but a large selection of packages from the repository.

Binary packages are thinned out and split, giving you even more control over what you install, which in turn keeps your environment as small and efficient as possible.


Simple

Alpine Linux is a very simple distribution that will try to stay out of your way.

It uses its own package manager called apk, the OpenRC init system, script driven set-ups and that’s it!

This provides you with a simple, crystal-clear Linux environment without all the noise.

You can then add on top of that just the packages you need for your project, 

so whether it’s building a home PVR, or an iSCSI storage controller, a wafer-thin mail server container, or a rock-solid embedded switch, nothing else will get in the way.


Secure

Alpine Linux was designed with security in mind.

The kernel is patched with an unofficial port of grsecurity/PaX, and all userland binaries are compiled as Position Independent Executables (PIE) with stack smashing protection.

These proactive security features prevent exploitation of entire classes of zero-day and other vulnerabilities.


dockerhub에 접속해서 haproxy를 검색해보면, official repository도 alpine을 사용하는 것을 볼수 있습니다.

https://hub.docker.com/_/haproxy/

# apk tool overview

add: Add new packages to the running system  

del: Delete packages from the running system  

fix: Attempt to repair or upgrade an installed package  

update: Update the index of available packages  

info: Prints information about installed or available packages  

search: Search for packages or descriptions with wildcard patterns  

upgrade: Upgrade the currently installed packages  

cache: Maintenance operations for locally cached package repository  

version: Compare version differences between installed and available packages  

index: create a repository index from a list of packages  

fetch: download (but not install) packages  

audit: List changes to the file system from pristine package install state  

verify: Verify a package signature  


# 패키지 업데이트

apk update

apk upgrade


# 패키지 설치

apk add vim

apk add curl

apk add tcpdump

apk add openssh


※ 참고 사이트 ※ 

https://alpinelinux.org/about/

https://wiki.alpinelinux.org/wiki/Alpine_Linux_package_management


저는 IT 기술에 대해 관심이 많고, 기술적인 토론하는 것을 매우 좋아합니다^^

어떠한 댓글이든 환영합니다^^


이 글이 도움이 되셨다면 아래에 있는 "♡공감" 버튼을 클릭해주세요