roadrunner

(β˜… 8,501)

🀯 High-performance PHP application server, process manager written in Go and powered with plugins

  • .dockerignore
  • .editorconfig
  • .gitignore
  • .golangci.yml
  • .rr.yaml
  • CHANGELOG.md
  • CLAUDE.md
  • CODE_OF_CONDUCT.md
  • codecov.yml
  • composer.json
  • CONTRIBUTING.md
  • Dockerfile
  • download-latest.sh
  • githooks-installer.sh
  • go.mod
  • go.sum
  • go.work
  • go.work.sum
  • LICENSE
  • Makefile
  • README.md
  • SECURITY.md

πŸš€ μ„€μΉ˜ κ°€μ΄λ“œ

1. μ½”λ“œ λ‚΄λ €λ°›κΈ°
git clone https://github.com/roadrunner-server/roadrunner

κΉƒν—ˆλΈŒμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œ 전체λ₯Ό λ‚΄ μ»΄ν“¨ν„°λ‘œ λ‚΄λ €λ°›μŠ΅λ‹ˆλ‹€.

cd roadrunner

방금 내렀받은 ν”„λ‘œμ νŠΈ 폴더 μ•ˆμœΌλ‘œ μ΄λ™ν•©λ‹ˆλ‹€.

2. 곡식 μ„€μΉ˜ 슀크립트

쉬움 μΆ”μ²œ
사전 μ€€λΉ„λ¬Ό
  • Homebrew macOS/Linux용 νŒ¨ν‚€μ§€ λ§€λ‹ˆμ €μž…λ‹ˆλ‹€.
  • Chocolatey Windows용 νŒ¨ν‚€μ§€ λ§€λ‹ˆμ €μž…λ‹ˆλ‹€.
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/roadrunner-server/roadrunner/master/download-latest.sh | sh

곡식 μ„€μΉ˜ 슀크립트λ₯Ό λ‹€μš΄λ‘œλ“œν•΄μ„œ λ°”λ‘œ μ‹€ν–‰ν•©λ‹ˆλ‹€. 이 ν•œ μ€„λ‘œ ν•„μš”ν•œ 게 μžλ™μœΌλ‘œ μ„€μΉ˜λ©λ‹ˆλ‹€.

brew install roadrunner

Homebrew둜 이미 λΉŒλ“œλœ νŒ¨ν‚€μ§€λ₯Ό λ°”λ‘œ μ„€μΉ˜ν•©λ‹ˆλ‹€. μ†ŒμŠ€ λΉŒλ“œκ°€ ν•„μš” μ—†μŠ΅λ‹ˆλ‹€.

choco install roadrunner

Chocolatey둜 λ°”λ‘œ μ„€μΉ˜ν•©λ‹ˆλ‹€ (Windows).

βœ… μ„€μΉ˜ ν›„ μƒˆ 터미널을 μ—΄κ³ , ν”„λ‘œκ·Έλž¨μ˜ 버전 확인 λͺ…λ Ή(예: --version)으둜 정상 μ„€μΉ˜λλŠ”μ§€ ν™•μΈν•˜μ„Έμš”.

이 레포의 README에 적힌 μ‹€μ œ λͺ…λ Ήμ–΄λ₯Ό κ·ΈλŒ€λ‘œ κ°€μ Έμ™”μŠ΅λ‹ˆλ‹€.

3. Docker

쉬움
사전 μ€€λΉ„λ¬Ό
  • Git GitHubμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œλ₯Ό λ‚΄λ €λ°›μœΌλ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • Docker Desktop μ»¨ν…Œμ΄λ„ˆλ₯Ό λΉŒλ“œν•˜κ³  μ‹€ν–‰ν•˜λ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€. μ„€μΉ˜ ν›„ μ‹€ν–‰ν•΄μ„œ λ°±κ·ΈλΌμš΄λ“œμ— μΌœλ‘μ„Έμš”.
docker build -t roadrunner .

Dockerfile을 기반으둜 μ‹€ν–‰ κ°€λŠ₯ν•œ 이미지λ₯Ό λΉŒλ“œν•©λ‹ˆλ‹€.

docker run -p 8080:80 roadrunner

λΉŒλ“œλœ 이미지λ₯Ό μ‹€μ œ μ»¨ν…Œμ΄λ„ˆλ‘œ μ‹€ν–‰ν•©λ‹ˆλ‹€.

βœ… 터미널에 docker compose ps λ₯Ό μž…λ ₯ν•΄ μ»¨ν…Œμ΄λ„ˆλ“€μ΄ Up μƒνƒœμΈμ§€ ν™•μΈν•˜μ„Έμš”. README에 포트 λ²ˆν˜Έκ°€ μ ν˜€μžˆλ‹€λ©΄ λΈŒλΌμš°μ €μ—μ„œ http://localhost:포트번호 둜 μ ‘μ†ν•΄λ³΄μ„Έμš”.

4. Node.js

쉬움
사전 μ€€λΉ„λ¬Ό
  • Git GitHubμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œλ₯Ό λ‚΄λ €λ°›μœΌλ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • Node.js npm λͺ…λ Ήμ–΄λ₯Ό μ“°λ €λ©΄ Node.jsκ°€ μ„€μΉ˜λ˜μ–΄ μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€. LTS(μž₯기지원) 버전을 μΆ”μ²œν•©λ‹ˆλ‹€.
cd schemas

이 ν”„λ‘œμ νŠΈμ˜ κ΄€λ ¨ 파일이 ν•˜μœ„ 폴더 μ•ˆμ— μžˆμ–΄μ„œ, λ¨Όμ € κ·Έ ν΄λ”λ‘œ μ΄λ™ν•©λ‹ˆλ‹€.

npm install

package.json에 λͺ…μ‹œλœ λΌμ΄λΈŒλŸ¬λ¦¬λ“€μ„ λ‚΄λ €λ°›μ•„ μ„€μΉ˜ν•©λ‹ˆλ‹€.

npm start

개발/μ‹€ν–‰ μ„œλ²„λ₯Ό μΌ­λ‹ˆλ‹€.

βœ… λͺ…λ Ήμ–΄ μ‹€ν–‰ ν›„ 터미널에 λ‚˜νƒ€λ‚˜λŠ” μ£Όμ†Œ(보톡 http://localhost:3000 ν˜•νƒœ)λ₯Ό λΈŒλΌμš°μ €μ—μ„œ μ—΄μ–΄λ³΄μ„Έμš”.

5. PHP (Composer)

쉬움
사전 μ€€λΉ„λ¬Ό
  • Git GitHubμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œλ₯Ό λ‚΄λ €λ°›μœΌλ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • PHP PHP μ‹€ν–‰ ν™˜κ²½μ΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • Composer PHP 라이브러리 μ„€μΉ˜λ₯Ό μœ„ν•œ νŒ¨ν‚€μ§€ λ§€λ‹ˆμ €μž…λ‹ˆλ‹€.
composer require spiral/roadrunner-cli

이 λͺ…λ Ήμ–΄λ₯Ό 터미널에 κ·ΈλŒ€λ‘œ μž…λ ₯ν•΄ μ‹€ν–‰ν•˜μ„Έμš”.

βœ… php -S localhost:8000 같은 λ‚΄μž₯ μ„œλ²„λ‘œ μ‹€ν–‰ν•œ λ’€ λΈŒλΌμš°μ €μ—μ„œ http://localhost:8000 으둜 μ ‘μ†ν•΄λ³΄μ„Έμš”.

이 레포의 README에 적힌 μ‹€μ œ λͺ…λ Ήμ–΄λ₯Ό κ·ΈλŒ€λ‘œ κ°€μ Έμ™”μŠ΅λ‹ˆλ‹€.

6. Go

보톡
사전 μ€€λΉ„λ¬Ό
  • Git GitHubμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œλ₯Ό λ‚΄λ €λ°›μœΌλ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • Go Go μ–Έμ–΄ 컴파일러 및 도ꡬ λͺ¨μŒμž…λ‹ˆλ‹€.
go build ./...

Go ν”„λ‘œκ·Έλž¨μ„ μ»΄νŒŒμΌν•΄ μ‹€ν–‰ νŒŒμΌμ„ λ§Œλ“­λ‹ˆλ‹€.

go run .

λ”°λ‘œ λΉŒλ“œν•˜μ§€ μ•Šκ³  λ°”λ‘œ Go ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•©λ‹ˆλ‹€.

βœ… λΉŒλ“œκ°€ μ—λŸ¬ 없이 λλ‚˜λ©΄ μ„±κ³΅μž…λ‹ˆλ‹€. go run . 을 썼닀면 터미널 좜λ ₯을 ν™•μΈν•˜μ„Έμš”.

7. Make

보톡
사전 μ€€λΉ„λ¬Ό
  • Git GitHubμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œλ₯Ό λ‚΄λ €λ°›μœΌλ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • Make Linux/macOSλŠ” 보톡 κΈ°λ³Έ μ„€μΉ˜λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. WindowsλŠ” 별도 μ„€μΉ˜(예: MSYS2, WSL)κ°€ ν•„μš”ν•©λ‹ˆλ‹€.
make

μƒμ„±λœ λΉŒλ“œ 섀정을 λ°”νƒ•μœΌλ‘œ μ‹€μ œ μ»΄νŒŒμΌμ„ μ§„ν–‰ν•΄ μ‹€ν–‰ νŒŒμΌμ„ λ§Œλ“­λ‹ˆλ‹€.

βœ… μ—λŸ¬ 없이 λλ‚˜λ©΄ μ„±κ³΅μž…λ‹ˆλ‹€. μƒμ„±λœ μ‹€ν–‰ νŒŒμΌμ„ 직접 μ‹€ν–‰ν•΄λ³΄μ„Έμš”.
// repository documentation