API 퀵 스타트
출처: Caddy 공식 문서
본문
사전 준비:
-
기본적인 터미널/명령줄 사용 능력
-
PATH에
caddy와curl이 있어야 해요
먼저 Caddy를 시작해요:
caddy start
Caddy는 지금 (빈 설정으로) 유휴 상태로 실행 중이에요. curl로 간단한 설정을 넣어 줘요:
curl localhost:2019/load \
-H "Content-Type: application/json" \
-d @- << EOF
{
"apps": {
"http": {
"servers": {
"hello": {
"listen": [":2015"],
"routes": [
{
"handle": [{
"handler": "static_response",
"body": "Hello, world!"
}]
}
]
}
}
}
}
}
EOF
Heredoc로 POST 본문을 주는 것은 번거로울 수 있어요. 파일을 쓰는 게 더 편하다면 JSON을 caddy.json이라는 파일로 저장하고 대신 이 명령을 사용해요:
curl localhost:2019/load \
-H "Content-Type: application/json" \
-d @caddy.json
이제 브라우저에서 localhost:2015를 열거나 curl을 사용해요:
curl localhost:2015
Hello, world!
이 JSON으로 서로 다른 인터페이스에서 여러 사이트를 정의할 수도 있어요:
{
"apps": {
"http": {
"servers": {
"hello": {
"listen": [":2015"],
"routes": [
{
"handle": [{
"handler": "static_response",
"body": "Hello, world!"
}]
}
]
},
"bye": {
"listen": [":2016"],
"routes": [
{
"handle": [{
"handler": "static_response",
"body": "Goodbye, world!"
}]
}
]
}
}
}
}
}
JSON을 업데이트한 다음 API 요청을 다시 수행해요.
새 "goodbye" 엔드포인트를 브라우저에서 열거나 curl로 확인해서 제대로 동작하는지 확인해 봐요:
curl localhost:2016
Goodbye, world!
Caddy 사용이 끝나면 꼭 중지해요:
caddy stop
API로 할 수 있는 일은 훨씬 많아요. 설정을 내보내거나, (전체를 바꾸는 대신) 설정을 세밀하게 변경하는 것도 가능해요. 방법을 배우려면 전체 API 튜토리얼을 꼭 읽어 보세요!