# ๐Ÿ“ฆ ์„ค์น˜ Pingclair๋Š” ๋‹จ์ผ Linux ๋ฐ”์ด๋„ˆ๋ฆฌ๋กœ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. ์ด ํŽ˜์ด์ง€์—์„œ๋Š” ์„ค์น˜ํ•˜๊ณ , ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์ด ๋ฌด์—‡์„ ๋‚จ๊ฒผ๋Š”์ง€ ๋ณด์—ฌ ์ฃผ๊ณ , ์„œ๋ฒ„๊ฐ€ ์‘๋‹ตํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ๋ฆด๋ฆฌ์Šค๋Š” **v0.2.0-rc.3**(๋ฆด๋ฆฌ์Šค ํ›„๋ณด)์ด๋ฉฐ, ์ด ์‚ฌ์ดํŠธ์˜ ๋ชจ๋“  ํŽ˜์ด์ง€๊ฐ€ ๊ทธ ๋ฆด๋ฆฌ์Šค๋ฅผ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ## ๐Ÿงพ ํ•„์š”ํ•œ ๊ฒƒ - `x86_64` ๋˜๋Š” `aarch64` Linux ํ˜ธ์ŠคํŠธ. ๋‘ ์•„ํ‚คํ…์ฒ˜ ๋ชจ๋‘ ๋ฆด๋ฆฌ์Šค ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ๊ฒŒ์‹œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. - `sudo` ๋˜๋Š” root. ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์€ `/usr/local/bin`, `/etc/Pingclair`, `/var/lib/pingclair`, `/etc/systemd/system`์— ์”๋‹ˆ๋‹ค. - ์„œ๋น„์Šค๋กœ ์šด์˜ํ•˜๋ ค๋ฉด `systemd`. ์—†๋Š” ํ˜ธ์ŠคํŠธ์—์„œ๋Š” Docker๋ฅผ ์“ฐ๊ฑฐ๋‚˜ ํฌ๊ทธ๋ผ์šด๋“œ๋กœ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค(๋‘˜ ๋‹ค ์•„๋ž˜์—์„œ ๋‹ค๋ฃน๋‹ˆ๋‹ค). - ๊ณต๊ฐœ ์ธ์ฆ์„œ๊ฐ€ ํ•„์š”ํ•˜๋ฉด ์ธํ„ฐ๋„ท์—์„œ 80๊ณผ 443 ํฌํŠธ์— ๋„๋‹ฌํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค ([HTTPS](/ko/start/https/)). ํด๋ผ์šฐ๋“œ ์ธ์Šคํ„ด์Šค๋ผ๋ฉด ์ œ๊ณต์ž ๋ฐฉํ™”๋ฒฝ๋„ ํ•จ๊ป˜ ์—ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. macOS์—์„œ์˜ ์†Œ์Šค ๋นŒ๋“œ๋Š” ๊ฐœ๋ฐœ์šฉ์œผ๋กœ ์ง€์›๋ฉ๋‹ˆ๋‹ค. macOS๋Š” ๋ฐฐํฌ ๋Œ€์ƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. ## ๐Ÿ“ฆ ๋ฆด๋ฆฌ์Šค ๋ฐ”์ด๋„ˆ๋ฆฌ๋กœ ์„ค์น˜ ```bash curl -fsSL https://pingclair.com/install.sh | sudo bash ``` ์Šคํฌ๋ฆฝํŠธ๋Š” `releases.pingclair.com`์˜ ๋ฆด๋ฆฌ์Šค ์ฑ„๋„์„ ์ฝ๊ณ , ์„ค์น˜ํ•˜๋ ค๋Š” ํƒœ๊ทธ๋ฅผ ์ถœ๋ ฅํ•˜๋ฉฐ, ๊ทธ ์ฑ„๋„์ด ๊ณต๊ฐœํ•œ SHA-256๊ณผ ์•„์นด์ด๋ธŒ๋ฅผ ๋Œ€์กฐํ•ฉ๋‹ˆ๋‹คโ€”โ€”์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ์•„์นด์ด๋ธŒ๋Š” ํ’€์ง€ ์•Š๊ณ  ๊ฑฐ๋ถ€ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ˜ธ์ŠคํŠธ์— ๋‹ฟ์„ ์ˆ˜ ์—†์œผ๋ฉด GitHub ๋ฆด๋ฆฌ์Šค API์™€ ์•„์นด์ด๋ธŒ ์˜†์— ๊ณต๊ฐœ๋œ ์ฒดํฌ์„ฌ ํŒŒ์ผ๋กœ ๋ฌผ๋Ÿฌ์„œ๋ฏ€๋กœ, ์„ค์น˜๊ฐ€ ํ•œ ์ œ๊ณต์ž์— ์˜์กดํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด์–ด์„œ ์„œ๋น„์Šค ์‚ฌ์šฉ์ž๋ฅผ ๋งŒ๋“ค๊ณ  ๋‚ฎ์€ ํฌํŠธ์— ๋ฐ”์ธ๋”ฉํ•  ๊ถŒํ•œ์„ ์ฃผ๊ณ , ๊ธฐ๋ณธ ์„ค์ •์„ ์“ฐ๊ณ , ์œ ๋‹›์„ ์„ค์น˜ํ•˜๊ณ , ์„œ๋น„์Šค๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋๊นŒ์ง€ ์ง„ํ–‰ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋๋‚ฉ๋‹ˆ๋‹ค. ```text Detected architecture: x86_64 Installing v0.2.0-rc.3 โ€” a release candidate, not a final release. Downloading https://releases.pingclair.com/pingclair/releases/0.2.0-rc.3/pingclair-linux-x86_64.tar.gz (from releases.pingclair.com)... โœ… sha256 matches the release channel document Creating system user 'pingclair'... Setting capabilities... Configuring directories and assets... Fetching default landing page... Creating default Pingclairfile... Installing Systemd service... Creating 'pc' symlink... โœ… Installation Complete! Use pc service status to check the service. Config: /etc/Pingclair/Pingclairfile ``` ์•„์ง ๋ฆด๋ฆฌ์Šค๋˜์ง€ ์•Š์€ ์ˆ˜์ •์ด ํ•„์š”ํ•˜๋ฉด ๋ฆด๋ฆฌ์Šค ๋ฐ”์ด๋„ˆ๋ฆฌ ๋Œ€์‹  `main`์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. ```bash curl -fsSL https://pingclair.com/install.sh | sudo bash -s -- --main ``` `--main`์€ ํ˜ธ์ŠคํŠธ์—์„œ ์ €์žฅ์†Œ๋ฅผ ๋ณต์ œํ•ด ์ปดํŒŒ์ผํ•ฉ๋‹ˆ๋‹ค. Rust 1.98 ์ด์ƒ๊ณผ BoringSSL, jemalloc์ด ์š”๊ตฌํ•˜๋Š” C ๋„๊ตฌ ๋ชจ์Œ(`cmake`, `clang`, `libclang-dev`, `g++`, `git`)์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด ํŒจํ‚ค์ง€๋“ค์€ `apt`์™€ `dnf` ๋ชจ๋‘์—์„œ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ง์ ‘ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. BoringSSL์„ ์†Œ์Šค์—์„œ ๋นŒ๋“œํ•˜๋ฏ€๋กœ ์ฒซ ๋นŒ๋“œ๋Š” ๋ช‡ ๋ถ„ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ## ๐Ÿ—‚๏ธ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์ด ๋‚จ๊ธด ๊ฒƒ | ๊ฒฝ๋กœ | ๋‚ด์šฉ | | --- | --- | | `/usr/local/bin/pingclair` | ์„œ๋ฒ„ ๋ฐ”์ด๋„ˆ๋ฆฌ. | | `/usr/local/bin/pc` | ๊ฐ™์€ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ์‹ฌ๋ณผ๋ฆญ ๋งํฌ(์งง์€ ์ด๋ฆ„). | | `/etc/Pingclair/Pingclairfile` | ์„œ๋น„์Šค๊ฐ€ ์‹คํ–‰ํ•˜๋Š” ์„ค์ •. | | `/etc/Pingclair/Pingclairfile.example` | ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์˜ˆ์ œ. ์—…๊ทธ๋ ˆ์ด๋“œํ•ด๋„ ๋ฎ์–ด์“ฐ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. | | `/var/lib/pingclair/.local/share/pingclair` | ์ธ์ฆ์„œ ์ €์žฅ์†Œ. ์„œ๋น„์Šค ๊ณ„์ •์˜ ๋ฐ์ดํ„ฐ ๋””๋ ‰ํ„ฐ๋ฆฌ์ด๋ฉฐ ๋ฐ”์ด๋„ˆ๋ฆฌ์˜ ๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค. | | `/var/lib/pingclair/html` | 80 ํฌํŠธ์—์„œ ์ œ๊ณต๋˜๋Š” ์•ˆ๋‚ด ํŽ˜์ด์ง€. | | `/var/log/pingclair` | `log` ์‹ฑํฌ๋ฅผ ์„ค์ •ํ–ˆ์„ ๋•Œ ๊ธฐ๋ก๋˜๋Š” ์œ„์น˜. | | `/etc/systemd/system/pingclair.service` | ํ™œ์„ฑํ™”๋˜์–ด ์‹คํ–‰ ์ค‘์ธ ์œ ๋‹›. | ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ๋๋‚œ ์‹œ์ ์— ์„œ๋น„์Šค๋Š” ์ด๋ฏธ ์‘๋‹ตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‹คํ–‰ ์ค‘์ธ ์„ค์ •์€ ์•ˆ๋‚ด์šฉ์ด๋ฉฐ ํ•œ ํ™”๋ฉด์— ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค. ```caddyfile # ๐Ÿฆ€ Pingclair default configuration file # Management commands: pc service :80 { # Welcome page file_server /var/lib/pingclair/html } ``` ์„œ๋น„์Šค ์‚ฌ์šฉ์ž์™€ ์ธ์ฆ์„œ ์ €์žฅ์†Œ๋Š” ์—†์„ ๋•Œ๋งŒ ๋งŒ๋“ค๊ณ , ๊ธฐ์กด `/etc/Pingclair/Pingclairfile`์€ ์ ˆ๋Œ€ ๊ต์ฒดํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์„ ๋‹ค์‹œ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ด ์ดˆ๊ธฐํ™”๊ฐ€ ์•„๋‹ˆ๋ผ ์—…๊ทธ๋ ˆ์ด๋“œ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค ([์—…๊ทธ๋ ˆ์ด๋“œ์™€ ์‚ญ์ œ](/ko/start/upgrade/)). ## โœ… ์„ค์น˜ ํ™•์ธ ๋ฐ”์ด๋„ˆ๋ฆฌ์— ๋ฒ„์ „์„ ๋ฌป์Šต๋‹ˆ๋‹ค. ```bash pingclair version ``` ```text v0.2.0-rc.3 ``` `pc`๋Š” ๊ฐ™์€ ๋ฐ”์ด๋„ˆ๋ฆฌ์ด๋ฏ€๋กœ `pc version`๋„ ๊ฐ™์€ ๋ฌธ์ž์—ด์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์€ `systemd`์— ๋ฌป์Šต๋‹ˆ๋‹ค. ```bash pc service status ``` ```text โ— pingclair.service - Pingclair High-Performance Web Server Loaded: loaded (/etc/systemd/system/pingclair.service; enabled; preset: enabled) Active: active (running) since Tue 2026-09-22 03:21:55 UTC; 42s ago Docs: https://github.com/dorianverlaine/pingclair Main PID: 1808 (pingclair) Status: "Serving" Tasks: 12 (limit: 627) Memory: 8.2M (peak: 8.5M) ``` `Status: "Serving"`๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‚ด์•„ ์žˆ๋‹ค๊ณ  `systemd`๊ฐ€ ์ถ”์ธกํ•œ ๊ฐ’์ด ์•„๋‹ˆ๋ผ ์„œ๋ฒ„๊ฐ€ ์ง์ ‘ ๋ณด๋‚ธ ๊ฐ’์ž…๋‹ˆ๋‹ค. ์œ ๋‹›์€ `notify` ํ˜•์‹์ด๊ณ , ๋ชจ๋“  ๋ฆฌ์Šค๋„ˆ๊ฐ€ ๋ฐ”์ธ๋”ฉ๋œ ๋’ค์—์•ผ ์ค€๋น„ ์™„๋ฃŒ๋ฅผ ์•Œ๋ฆฝ๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ ์„œ๋ฒ„์— ๋ฌป์Šต๋‹ˆ๋‹ค. ```bash curl -i http://localhost/ ``` ```text HTTP/1.1 200 OK Content-Type: text/html; charset=utf-8 Content-Length: 18747 Last-Modified: Tue, 22 Sep 2026 03:21:54 GMT ETag: "493b-6ab1f452" Vary: Accept-Encoding Accept-Ranges: bytes server: Pingclair ``` `ETag`์™€ `Last-Modified`๊ฐ€ ์žˆ๋Š” `200`์€ ํŒŒ์ผ ์„œ๋ฒ„๊ฐ€ ์‘๋‹ตํ–ˆ๋‹ค๋Š” ๋œป์ด๊ณ , ๋ณธ๋ฌธ์€ `/var/lib/pingclair/html`์˜ ์•ˆ๋‚ด ํŽ˜์ด์ง€์ž…๋‹ˆ๋‹ค. ## ๐Ÿณ Docker ๊ณต๊ฐœ ์ด๋ฏธ์ง€๋Š” ์„ค์ • ํŒŒ์ผ ๋ชจ๋“œ๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. entrypoint๋Š” `pingclair`, ๊ธฐ๋ณธ ๋ช…๋ น์€ `run /etc/pingclair/Pingclairfile`์ž…๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€๋Š” `/etc/pingclair`์™€ `/var/lib/pingclair`๋ฅผ ๋ณผ๋ฅจ์œผ๋กœ ์„ ์–ธํ•˜๊ณ  80, 443 ํฌํŠธ๋ฅผ ๋…ธ์ถœํ•ฉ๋‹ˆ๋‹ค. ```yaml services: pingclair: image: ghcr.io/dorianverlaine/pingclair:v0.2.0-rc.3 restart: unless-stopped ports: - "80:80" - "443:443" - "443:443/udp" # HTTP/3 volumes: - ./conf:/etc/pingclair:ro - ./site:/srv:ro - pingclair_tls:/var/lib/pingclair volumes: pingclair_tls: ``` ```bash mkdir -p conf site printf ':80 {\n file_server /srv\n}\n' > conf/Pingclairfile echo '

hello from the container

' > site/index.html docker compose up -d curl -i http://localhost/ ``` ํ‹€๋ฆฌ๊ธฐ ์‰ฌ์šด ์ ์ด ์„ธ ๊ฐ€์ง€ ์žˆ์Šต๋‹ˆ๋‹ค. - **`command:`๋ฅผ ์ถ”๊ฐ€ํ•˜์ง€ ๋งˆ์„ธ์š”.** ์ด๋ฏธ์ง€ ๊ธฐ๋ณธ๊ฐ’์ด ์ด๋ฏธ `run /etc/pingclair/Pingclairfile`์ด๊ณ , ๋ฎ์–ด์“ฐ๋ฉด ๊ทธ ๋ช…๋ น์ด ๊ต์ฒด๋ฉ๋‹ˆ๋‹ค. - **`/var/lib/pingclair/.local/share/pingclair`๋งŒ ๋งˆ์šดํŠธํ•˜์ง€ ๋งˆ์„ธ์š”.** ์ €์žฅ์†Œ๋Š” ์ธ์ฆ์„œ ๋””๋ ‰ํ„ฐ๋ฆฌ ์˜†์—๋„ ์ƒํƒœ๋ฅผ ๋‘๋ฏ€๋กœ, `certs`๋งŒ ๋งˆ์šดํŠธํ•œ ์ฑ„ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋‹ค์‹œ ๋งŒ๋“ค๋ฉด ๊ทธ ์ƒํƒœ๋ฅผ ์žƒ์Šต๋‹ˆ๋‹ค. `/var/lib/pingclair`๋ฅผ ๋งˆ์šดํŠธํ•ฉ๋‹ˆ๋‹ค. - **๊ณต๊ฐœ ํƒœ๊ทธ๋ฅผ ๊ณ ์ •ํ•˜์„ธ์š”.** `latest`๋Š” ์ตœ์‹  ๋ฆด๋ฆฌ์Šค๋ฅผ ๋”ฐ๋ผ๊ฐ‘๋‹ˆ๋‹ค. ์šด์˜์—์„œ๋Š” ์˜ˆ์ œ์ฒ˜๋Ÿผ ๋ฒ„์ „์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ณต๊ฐœ ํƒœ๊ทธ๋Š” [ํŒจํ‚ค์ง€ ํŽ˜์ด์ง€](https://github.com/dorianverlaine/pingclair/pkgs/container/pingclair)์— ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ `docker` ๊ทธ๋ฃน์— ์—†๋Š” ํ˜ธ์ŠคํŠธ์—์„œ๋Š” ๋ช…๋ น ์•ž์— `sudo`๋ฅผ ๋ถ™์ด๊ฑฐ๋‚˜ `sudo usermod -aG docker "$USER"`๋กœ ํ•œ ๋ฒˆ ๊ทธ๋ฃน์— ์ถ”๊ฐ€ํ•œ ๋’ค ์ƒˆ ๋กœ๊ทธ์ธ ์„ธ์…˜์„ ์—ฌ์‹ญ์‹œ์˜ค. Ubuntu์—์„œ๋Š” `docker compose` ํ”Œ๋Ÿฌ๊ทธ์ธ์ด `docker-compose-v2` ํŒจํ‚ค์ง€์— ๋“ค์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ## ๐Ÿ› ๏ธ ์†Œ์Šค์—์„œ ๋นŒ๋“œ ```bash git clone https://github.com/dorianverlaine/pingclair cd pingclair cargo build --release ``` ํ•„์š” ํ™˜๊ฒฝ: Rust 1.98.1(CI๊ฐ€ ๊ณ ์ •ํ•œ ๋ฒ„์ „), `cmake`, `clang`, `libclang-dev`, `g++`, `git`. ๋นŒ๋“œ ๊ณผ์ •์—์„œ BoringSSL์„ ์†Œ์Šค๋กœ ์ปดํŒŒ์ผํ•˜๋ฏ€๋กœ ์ฒซ ๋นŒ๋“œ๋Š” ๋ช‡ ๋ถ„ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ## โš ๏ธ ์„ค์น˜๊ฐ€ ์‹คํŒจํ•  ๋•Œ - **`This script must be run as root`.** ์Šคํฌ๋ฆฝํŠธ๋Š” ํ™ˆ ๋””๋ ‰ํ„ฐ๋ฆฌ ๋ฐ–์— ์“ฐ๊ณ  ์œ ๋‹›์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. `sudo`๋ฅผ ๋ถ™์—ฌ ๋‹ค์‹œ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค. - **Fedora์—์„œ `setcap: command not found`.** ๊ทธ๊ฒƒ์€ `libcap` ํŒจํ‚ค์ง€์ž…๋‹ˆ๋‹ค. ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์ด ๋„ฃ์–ด ์ฃผ์ง€๋งŒ ์†์œผ๋กœ ๊ตฌ์„ฑํ•œ ํ˜ธ์ŠคํŠธ์—๋Š” ์—†์„ ์ˆ˜ ์žˆ๊ณ , ๊ทธ ๊ถŒํ•œ์ด ์—†์œผ๋ฉด ์„œ๋น„์Šค๊ฐ€ 80๊ณผ 443์— ๋ฐ”์ธ๋”ฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. - **์„ค์น˜ ์งํ›„ `Job for pingclair.service failed`.** `journalctl -u pingclair -n 20`์„ ์ฝ์œผ์‹ญ์‹œ์˜ค. ํ”ํ•œ ์›์ธ์€ ๊ฒ€์ฆ์„ ํ†ต๊ณผํ•˜์ง€ ๋ชปํ•œ ์„ค์ •์ด๊ฑฐ๋‚˜, ์ด๋ฏธ 80 ํฌํŠธ๋ฅผ ์žก๊ณ  ์žˆ๋Š” ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์ž…๋‹ˆ๋‹ค. - **์„œ๋น„์Šค๋Š” ๋„๋Š”๋ฐ ๋ฐ–์—์„œ ์•„๋ฌด๊ฒƒ๋„ ์‘๋‹ตํ•˜์ง€ ์•Š์Œ.** ๋ฆฌ์Šค๋„ˆ๋Š” ๋ฐ”์ธ๋”ฉ๋๊ณ  ํŒจํ‚ท์ด ๋„์ฐฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋จผ์ € ์ œ๊ณต์ž์˜ ๋ฐฉํ™”๋ฒฝ์ด๋‚˜ ๋ณด์•ˆ ๊ทธ๋ฃน์„, ๋‹ค์Œ์œผ๋กœ ํ˜ธ์ŠคํŠธ ์ž์ฒด์˜ ๊ทœ์น™์„ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. - **ํ˜ธ์ŠคํŠธ์— `systemd`๊ฐ€ ์—†์Œ.** ๋ฐ”์ด๋„ˆ๋ฆฌ๋Š” ์„ค์น˜๋˜์–ด ์“ธ ์ˆ˜ ์žˆ์ง€๋งŒ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์˜ ์„œ๋น„์Šค ๋‹จ๊ณ„๋Š” ์‹คํ–‰ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. Docker๋‚˜ `pingclair run`์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. ## ๐Ÿงน ์‚ญ์ œํ•˜๊ธฐ [์—…๊ทธ๋ ˆ์ด๋“œ์™€ ์‚ญ์ œ](/ko/start/upgrade/)์— ์ •๋ฆฌ ์ ˆ์ฐจ์™€ ๋ณด์กดํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋‹ด๊ธด ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์ •๋ฆฌํ•ด ๋‘์—ˆ์Šต๋‹ˆ๋‹ค. ## ๐Ÿงญ ๋‹ค์Œ ๋‹จ๊ณ„ - [ํ€ต์Šคํƒ€ํŠธ](/ko/start/quickstart/): ์•ˆ๋‚ด ํŽ˜์ด์ง€๋ฅผ ์ž์‹ ์˜ ์„ค์ •์œผ๋กœ ๋ฐ”๊พธ๊ณ  ์‹ค์ œ ์‚ฌ์ดํŠธ๋ฅผ ์„œ๋น„์Šคํ•ฉ๋‹ˆ๋‹ค. - [HTTPS](/ko/start/https/): ๊ณต๊ฐœ ์ด๋ฆ„์„ ์œ„ํ•œ ์ธ์ฆ์„œ. - [์„œ๋น„์Šค๋กœ ์‹คํ–‰](/ko/start/service/): ์œ ๋‹›์ด ํ•˜๋Š” ์ผ๊ณผ ์•ˆ์ „ํ•œ ์žฌ์ ์šฉ ๋ฐฉ๋ฒ•.