๐ [nginx, nexus docker repository] retrying, Request Entity Too Large ์๋ฌ ํด๊ฒฐ
๊ฐ์ธ ์๋ฒ์ Nexus Docker Repository๋ฅผ ๊ตฌ์ถํ๊ณ image push ํ ์คํธ๋ฅผ ํด๋ดค๋๋ฐ ๋ค์๊ณผ ๊ฐ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค.
์ ๋ฒ์ ์ฌ์๋ ๋์ Request Entity Too Large๋ผ๋ ์๋ฌ๋ฅผ ๋ฑ๊ณ ๊ฒฐ๊ตญ ์ด๋ฏธ์ง ํธ์์ ์คํจํ์ต๋๋ค.
๊ตฌ๊ธ๋ง์ ํ๋ ๋์ Nexus ์๋ฒ์ ๋ฌธ์ ๊ฐ ์๋ ์ ๋จ์ proxy๋ก ๋์๋ Nginx ๋ฌธ์ ๋ผ๋ ๊ฒ์ ์๊ฒ ๋์์ต๋๋ค.
๐ Nginx ๋ก๊ทธ ํ์ธ
$ docker logs -f proxy
๋ก๊ทธ๋ก ํ์ธํด๋ณด๋ Nginx์์ client intended to send too large chunked body
๋ผ๋ ์๋ฌ๋ฅผ ํ์ธํ์ต๋๋ค.
์ด ์ค๋ฅ๋ ํด๋ผ์ด์ธํธ๊ฐ ๋ณด๋ด๋ ์์ฒญ ๋ณธ๋ฌธ(body)์ด Nginx ์๋ฒ์์ ์ค์ ๋ ์ต๋ ํฌ๊ธฐ ์ ํ์ ์ด๊ณผํ์ ๋ ๋ฐ์ํฉ๋๋ค.
๐ ํด๊ฒฐ
/etc/nginx/nginx.conf
ํ์ผ์ ๋ค์ ๊ตฌ๋ฌธ์ ์ถ๊ฐํด์ค๋๋ค.
์ ๋ ํน์ ๋ชฐ๋ผ ํตํฌ๊ฒ 500M๋ก ์ค์ ํด์ฃผ์์ต๋๋ค.
sendfile on;
client_max_body_size 500M;
client_body_buffer_size 500M;
sendfile ๊ตฌ๋ฌธ์ด ๊ธฐ์กด์ ์๋ค๋ฉด ์ค๋ณต๋์ ๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ ์กฐ์ฌํด์ฃผ์ธ์.
$ nginx -t #nginx ํ
์คํธ
$ service nginx reload #์์ ๋ ํ์ผ ์ ์ฉ
์ ๋ช ๋ น์ด๋ก ์์ ๋ ํ์ผ์ ๋ฐ์ํด์ฃผ๋ฉด ๋์ ๋๋ค.
์ ์์ ์ผ๋ก push ๋ ํ ์ ์ฅ์์ ์ฑ๊ณต์ ์ผ๋ก ์ ์ฅ๋ ๋ชจ์ต์ ํ์ธ๊ฐ๋ฅํฉ๋๋ค.
๋๊ธ