๐ Let's Encrypt: Error creating new order :: too many certificates ์ค๋ฅ
Docker-compose
๋ฅผ ์ด์ฉํ์ฌ ์๋ฒ๋ฅผ ๋ฐฐํฌํ ๋ SSL(Secure Sockets Layer)
์ธ์ฆ์ ๋ฐ๊ธฐ ์ํด ๋ฒ์ฉ์ ์ผ๋ก ์ฌ์ฉํ๋ ๋ฌด๋ฃ ์ธ์ฆ๊ธฐ๊ด์ธ Let's Encrypt
์ ์ด์ฉํ๋ค๊ฐ ํ
์คํธ ์์
ํ๋๋ผ ์ธ์ฆ์๋ฅผ ์ฌ๋ฌ ๋ฒ ์ฌ๋ฐ๊ธ๋ฐ์๋๋ ๋ค์๊ณผ ๊ฐ์ ์ค๋ฅ๊ฐ ๋จ๋ฉด์ ๋ ์ด์ ์ธ์ฆ์๋ฅผ ๋ฐ๊ธํด์ฃผ์ง ์์๋ค.
An unexpected error occurred:
There were too many requests of a given type :: Error creating new order :: too many certificates (5) already issued for this exact set of domains in the last 168 hours: <my-domain>: see https://letsencrypt.org/docs/rate-limits/
์์ด๋ฅผ ์ฝ์ด๋ณด๋ฉด ์ ์ ์๋ฏ์ด ๋๋ฌด ๋ง์ด ์ธ์ฆ์๋ฅผ ์์ฒญํ์ฌ Let's Encrypt
์์ ๋ ์ด์ ์์ฒญํ์ง ๋ชปํ๊ฒ ์ ํ์ํจ ๊ฒ์ธ๋ฐ, limit-rate
์ The main limit is Certificates per Registered Domain (50 per week)
๋ผ๊ณ ์์ฑ๋์ด์๋๊ฒ์ผ๋ก ๋ณด์ ์ฃผ๋น 50๋ฒ๊น์ง ์์ฒญํ ์ ์๋ ๊ฒ์ ์ ์ ์๊ณ 50๋ฒ์ด ๋์ด๊ฐ๋ฉด ์ฌ์ง์ฒ๋ผ 1์ฃผ์ผ ๋์ ์์ฒญํ ์ ์๋๋ก limit
์ด ๊ฑธ๋ฆฌ๊ฒ ๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, ๋ ์ด์ ์ธ์ฆ์๋ฅผ ๋ฐ๊ธ ๋ฐ์ ์ ์๊ธฐ ๋๋ฌธ์ ๋ฐ๊ธ ์ ํ ๊ธฐ๊ฐ ๋์์๋ ๊ธฐ์กด ์ธ์ฆ์๋ฅผ ์ฌ์ฉํด์ผ ํ๋๋ฐ, ๋๋ ์ธ์ฆ์๋ฅผ ๋ฐฑ์
ํด๋์ง ์๊ณ ํ
์คํธํ๊ธฐ ๋๋ฌธ์ 1์ฃผ์ผ ๋์ ๊ธฐ๋ค๋ ค์ผ ํ๋ ์ด๋ง์ ๋ณด๊ฒ ๋์๋ค. ์ด๋ง์ ๋ณด๊ณ ๋์ ์๊ฒ ๋ ๊ฒ์ด์ง๋ง ๋ง์ฝ, ์ธ์ฆ์๋ฅผ 50๋ฒ์ ๋๊ฒ ๋ฐ๊ธ๋ฐ์์ผ ํ๋ ์ํฉ์ด๋ฉด staging-environment
์์๋ --dry-run
์ปค๋งจ๋๋ฅผ ์
๋ ฅํ์ฌ ๋ฐ๊ธ๋ฐ๋๋ก ํ์. production-environment
์๋ ๋ค๋ฅด๊ฒ ๋ค์์ฒ๋ผ ์ฌ๋ฐ๊ธ์ ๊ฑฑ์ ํ์ง ์์๋ ๋๋ ํ์๋งํผ ๋์ด๋๋ค. ํ๋จ์ code-block
์ staging-environment
๊ฐ ๋ฌด์์ธ์ง ์๋ ค์ค๋ค.
1. ๋ฑ๋ก ๋ ๋๋ฉ์ธ ๋น ์ธ์ฆ์ ์ ํ๋๋ ์ฃผ๋น 30,000์
๋๋ค.
2. ์ค๋ณต ์ธ์ฆ์ ํ๋๋ ์ฃผ๋น 30,000์
๋๋ค.
3. ์คํจํ ์ ํจ์ฑ ๊ฒ์ฌ ์ ํ์ ์๊ฐ๋น 60์
๋๋ค.
4. ๊ณ์ ๋น IP ์ฃผ์ ์ ํ์ IP ๋น 3์๊ฐ, 3์๊ฐ๋น 50๊ณ์ ์
๋๋ค.
๋ฌผ๋ก , staging-environment
๋ก ๋ฐ๊ธ๋ฐ๋๊ฒ๋ ์ค์ํ์ง๋ง ๋ฌด์๋ณด๋ค production-environment
๋ก ํ๋ฒ ๋ฐ๊ธ ๋ฐ์ ์ธ์ฆ์๋ฅผ ๋ฐฑ์
ํด ๋๊ณ ๋ ์ด์ ๋ฐ๊ธ์ด ์๋๋ฉด ๋ฐฑ์
์ธ์ฆ์๋ฅผ ์ฌ์ฉํ์. production-environment
์์ ๋ฐ์ ์ธ์ฆ์๋ ๋ณดํต `./certbot/live/<domain>` ํด๋ ์์ ์ ์ฅ๋์ด์๋ค. ๋ง์ฝ, ./certbot/
์ live
ํด๋๊ฐ ์๋ค๋ฉด ๋๋ฉ์ธ ์ธ์ฆ์๋ฅผ ๋ฐ์ง ์์ ์ํ์ด๋ฏ๋ก ํ๋จ์ docker-compose
์ฝ๋๋ฅผ ์ฐธ๊ณ ํ์ฌ docker-compose up
ํ ๋ ์ธ์ฆ์๋ฅผ ๋ฐ์์ค์.
# docker-compose.yml
version: "3"
services:
certbot:
image: certbot/certbot
command: certonly --webroot --webroot-path=/usr/share/nginx/html/letsencrypt --email <my-email.com> --agree-tos --no-eff-email -d <my-domain.com>
volumes:
- ./certbot/conf/:/etc/letsencrypt
- ./certbot/logs/:/var/log/letsencrypt
- ./certbot/data:/usr/share/nginx/html/letsencrypt
reference
'devOps > Docker' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ ๋์ปค(Docker) ] docker-compose dev, prod ๋ชจ๋๋ก ๋ฆฌํฉํ ๋งํ๊ธฐ (0) | 2022.03.16 |
---|---|
[ ๋์ปค(Docker) ] Error: EPERM: operation not permitted, scandir ๊ถํ ์ค๋ฅ (0) | 2022.03.02 |
๋๊ธ