Docker (๋„์ปค)

    ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 5. grafana๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ณต์ˆ˜ ์„œ๋ฒ„๋ฅผ ํ•œ ๊ณณ์—์„œ ๋ชจ๋‹ˆํ„ฐ๋ง ํ•˜๊ธฐ

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 1. vnstat ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 2. netdata ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 3. grafana, prometheus, nodeexporter, cadvisor, alertmanager ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 4. mysqld-exporter, nginx-prometheus-exporter ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 5. grafana๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ณต์ˆ˜ ์„œ๋ฒ„๋ฅผ ํ•œ ๊ณณ์—์„œ ๋ชจ๋‹ˆํ„ฐ๋ง ํ•˜๊ธฐ 1. ๋ณต์ˆ˜ ์„œ๋ฒ„๋ฅผ ํ•œ ๊ณณ์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ• ๋ณต์ˆ˜ ์„œ๋ฒ„๋ฅผ ํ•œ ๊ณณ์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€. ์šด์˜ ์„œ๋ฒ„๋“ค์— nodeexporter ๊นŒ์ง€..

    ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 4. mysqld-exporter, nginx-prometheus-exporter

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 1. vnstat ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 2. netdata ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 3. grafana, prometheus, nodeexporter, cadvisor, alertmanager ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 4. mysqld-exporter, nginx-prometheus-exporter ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 5. grafana๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ณต์ˆ˜ ์„œ๋ฒ„๋ฅผ ํ•œ ๊ณณ์—์„œ ๋ชจ๋‹ˆํ„ฐ๋ง ํ•˜๊ธฐ ์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ์•ž ๊ธ€์—์„œ ์„ค์น˜ํ•œ grafana, prometheus, nodeexporter, cadvisor, alertmanager ์—๋‹ค๊ฐ€ mysq..

    ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 3. grafana, prometheus, nodeexporter, cadvisor, alertmanager

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 1. vnstat ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 2. netdata ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 3. grafana, prometheus, nodeexporter, cadvisor, alertmanager ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 4. mysqld-exporter, nginx-prometheus-exporter ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 5. grafana๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ณต์ˆ˜ ์„œ๋ฒ„๋ฅผ ํ•œ ๊ณณ์—์„œ ๋ชจ๋‹ˆํ„ฐ๋ง ํ•˜๊ธฐ 1. ์„ค์น˜ํ•  ๊ฒƒ๋“ค ๊ฐ€. nodeexporter : ์„œ๋ฒ„ ๋ฐ ๋„คํŠธ์›Œํฌ ์ •๋ณด ๋“ฑ ์‹œ์Šคํ…œ metric ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜์—ฌ ์ œ๊ณต ๋‚˜. cadvisor : ์ปจํ…Œ์ด..

    ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 2. netdata

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 1. vnstat ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 2. netdata ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 3. grafana, prometheus, nodeexporter, cadvisor, alertmanager ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 4. mysqld-exporter, nginx-prometheus-exporter ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 5. grafana๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ณต์ˆ˜ ์„œ๋ฒ„๋ฅผ ํ•œ ๊ณณ์—์„œ ๋ชจ๋‹ˆํ„ฐ๋ง ํ•˜๊ธฐ 1. netdata - netdata๋Š” ์˜คํ”ˆ์†Œ์Šค ๋ชจ๋‹ˆํ„ฐ๋ง ์‹œ์Šคํ…œ์œผ๋กœ ์œ ๋ช…ํ•˜๋‹ค๊ณ  ํ•˜๋„ค์š”. ์ €๋Š” ์ตœ๊ทผ์— ์•Œ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. - ์„ค์น˜ ๋ฌด์ฒ™ ์‰ฝ์Šต๋‹ˆ๋‹ค. - ์‹œ์Šค..

    ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 1. vnstat

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 1. vnstat ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 2. netdata ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 3. grafana, prometheus, nodeexporter, cadvisor, alertmanager ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 4. mysqld-exporter, nginx-prometheus-exporter ์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง with docker => 5. grafana๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ณต์ˆ˜ ์„œ๋ฒ„๋ฅผ ํ•œ ๊ณณ์—์„œ ๋ชจ๋‹ˆํ„ฐ๋ง ํ•˜๊ธฐ ์ทจ๋ฏธ๋กœ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ•˜๋ฉด์„œ ๋งŒ๋“  ๋ช‡ ๊ฐœ์˜ ์›น์„œ๋น„์Šค๋“ค์„ ๋ช‡ ๊ฐœ์˜ ํ”„๋ฆฌํ‹ฐ์–ด ์„œ๋ฒ„์—์„œ ์šด์˜ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‹ค๋ณด๋‹ˆ ์„œ๋ฒ„๋งˆ๋‹ค ํŠธ๋ž˜ํ”ฝ์€ ์–ด๋Š ์ •๋„์ธ์ง€, ์ ‘์†์ž..

    Nginx + ModSecurity + Fail2ban + Docker => 5. Dockerhub ์ด๋ฏธ์ง€ ์‚ฌ์šฉ

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ 1. Nginx + ModSecurity + Fail2ban + Docker => 1. ์ทจ์•ฝํ•œ ์›น์‚ฌ์ดํŠธ 2. Nginx + ModSecurity + Fail2ban + Docker => 2. ModSecurity + Fail2ban ์„ค์น˜ 3. Nginx + ModSecurity + Fail2ban + Docker => 3. Fail2ban ์„ค์ • ๋ฐฉ๋ฒ• 4. Nginx + ModSecurity + Fail2ban + Docker => 4. Nginx Limit req ์„ค์ • 5. Nginx + ModSecurity + Fail2ban + Docker => 5. Dockerhub ์ด๋ฏธ์ง€ ์‚ฌ์šฉ 1. Dockerhub ์ด๋ฏธ์ง€ ์‚ฌ์šฉ ์žฅ์  โœจโœจ ์„ค์น˜ ์‹œ๊ฐ„ ๋‹จ์ถ•..

    Nginx + ModSecurity + Fail2ban + Docker => 4. Nginx Limit req ์„ค์ •

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ 1. Nginx + ModSecurity + Fail2ban + Docker => 1. ์ทจ์•ฝํ•œ ์›น์‚ฌ์ดํŠธ 2. Nginx + ModSecurity + Fail2ban + Docker => 2. ModSecurity + Fail2ban ์„ค์น˜ 3. Nginx + ModSecurity + Fail2ban + Docker => 3. Fail2ban ์„ค์ • ๋ฐฉ๋ฒ• 4. Nginx + ModSecurity + Fail2ban + Docker => 4. Nginx Limit req ์„ค์ • 5. Nginx + ModSecurity + Fail2ban + Docker => 5. Dockerhub ์ด๋ฏธ์ง€ ์‚ฌ์šฉ ์•ž ๊ธ€์—์„œ๋Š” fail2ban ์œผ๋กœ ๊ณผ๋„ํ•œ ์š”์ฒญ์„ ํ•˜๋Š” ์•„์ดํ”ผ๋ฅผ..

    Nginx + ModSecurity + Fail2ban + Docker => 3. Fail2ban ์„ค์ • ๋ฐฉ๋ฒ•

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ 1. Nginx + ModSecurity + Fail2ban + Docker => 1. ์ทจ์•ฝํ•œ ์›น์‚ฌ์ดํŠธ 2. Nginx + ModSecurity + Fail2ban + Docker => 2. ModSecurity + Fail2ban ์„ค์น˜ 3. Nginx + ModSecurity + Fail2ban + Docker => 3. Fail2ban ์„ค์ • ๋ฐฉ๋ฒ• 4. Nginx + ModSecurity + Fail2ban + Docker => 4. Nginx Limit req ์„ค์ • 5. Nginx + ModSecurity + Fail2ban + Docker => 5. Dockerhub ์ด๋ฏธ์ง€ ์‚ฌ์šฉ 1. fail2ban ๋ž€ ์•ž์—์„œ ์„ค์น˜ํ•œ fail2ban์€ ์›น์„œ..

    Nginx + ModSecurity + Fail2ban + Docker => 2. ModSecurity + Fail2ban ์„ค์น˜

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ 1. Nginx + ModSecurity + Fail2ban + Docker => 1. ์ทจ์•ฝํ•œ ์›น์‚ฌ์ดํŠธ 2. Nginx + ModSecurity + Fail2ban + Docker => 2. ModSecurity + Fail2ban ์„ค์น˜ 3. Nginx + ModSecurity + Fail2ban + Docker => 3. Fail2ban ์„ค์ • ๋ฐฉ๋ฒ• 4. Nginx + ModSecurity + Fail2ban + Docker => 4. Nginx Limit req ์„ค์ • 5. Nginx + ModSecurity + Fail2ban + Docker => 5. Dockerhub ์ด๋ฏธ์ง€ ์‚ฌ์šฉ 1. Dockerfile ์ž‘์„ฑ์— ์•ž์„œ์„œ... 1) ์•ž ๊ธ€์—์„œ ..

    Nginx + ModSecurity + Fail2ban + Docker => 1. ์ทจ์•ฝํ•œ ์›น์‚ฌ์ดํŠธ

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ 1. Nginx + ModSecurity + Fail2ban + Docker => 1. ์ทจ์•ฝํ•œ ์›น์‚ฌ์ดํŠธ 2. Nginx + ModSecurity + Fail2ban + Docker => 2. ModSecurity + Fail2ban ์„ค์น˜ 3. Nginx + ModSecurity + Fail2ban + Docker => 3. Fail2ban ์„ค์ • ๋ฐฉ๋ฒ• 4. Nginx + ModSecurity + Fail2ban + Docker => 4. Nginx Limit req ์„ค์ • 5. Nginx + ModSecurity + Fail2ban + Docker => 5. Dockerhub ์ด๋ฏธ์ง€ ์‚ฌ์šฉ 1. ์‹œํ์–ด ์ฝ”๋”ฉ์„ ์•Œ๊ธฐ ์ „ ์ž‘๋…„์— ์›น์„œ๋น„์Šค ํ•˜๋‚˜๋ฅผ ๋งŒ๋“ค์–ด์„œ ..

    ์œˆ๋„์šฐ์ฆˆ ๋กœ์ปฌ ์ปดํ“จํ„ฐ์— https๋ฅผ ์œ„ํ•œ ์ธ์ฆ์„œ ๋ฐœ๊ธ‰ ๋ฐฉ๋ฒ•2 (with mkcert.exe)

    โœ… ์œˆ๋„์šฐ์ฆˆ ๋กœ์ปฌ ์ปดํ“จํ„ฐ์—์„œ ํ…Œ์ŠคํŠธ ์šฉ๋„๋กœ https๋ฅผ ์œ„ํ•œ ์ธ์ฆ์„œ๋ฅผ ๋ฐœ๊ธ‰ ๋ฐ›๋Š” ๋ฐฉ๋ฒ•์„ ์ด์ „ ๊ฒŒ์‹œ๊ธ€์—์„œ ์ž‘์„ฑํ•œ ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. https://mungkhs1.tistory.com/59 16. https๋ฅผ ์“ฐ๊ธฐ ์œ„ํ•ด ๋กœ์ปฌ์—์„œ SSL ํ…Œ์ŠคํŠธ ํ•˜๊ธฐ (with mkcert) ์•ž์—์„œ ์šฐ๋ฆฌ๋Š” ๋กœ์ปฌ์—์„œ ์ž„์‹œ๋กœ ๋„๋ฉ”์ธ์„ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ์‚ดํŽด๋ณด์•˜์Šต๋‹ˆ๋‹ค. ์ด์ œ ์•ž์—์„œ ์ž„์‹œ๋กœ ๋งŒ๋“  ๋„๋ฉ”์ธ์„ ์ด์šฉํ•˜์—ฌ ๋กœ์ปฌ์—์„œ ์ธ์ฆ์„œ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ https๋ฅผ ํ…Œ์ŠคํŠธ ํ•ด ๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๐Ÿ”ด mungkhs1.tistory.com ๐Ÿบ ๊ทธ๋Ÿฐ๋ฐ, ์œ„ ๋ฐฉ๋ฒ•์€ mkcert๋ฅผ ์„ค์น˜ํ•˜๊ธฐ ์œ„ํ•ด ๋จผ์ € ๋ช‡๊ฐ€์ง€ ์ž‘์—…์„ ํ•ด์•ผ๋งŒ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ตœ๊ทผ์— ๊ณต๋ถ€๋ฅผ ํ•˜๋˜ ์ค‘ ์œˆ๋„์šฐ์ฆˆ์—์„œ mkcert๋ฅผ ์ด์šฉํ•œ ์ข€๋” ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์„ ์•Œ๊ฒŒ ๋˜์–ด ๊ธฐ๋ก์œผ๋กœ ๋‚จ๊ฒจ๋‘ก๋‹ˆ๋‹ค. 1. ์•„๋ž˜์˜ ๋งํฌ์—..

    3. ์ผ๋ถ€ ์†Œ์Šค ์ˆ˜์ • ํ›„ ์ž๋™ ๋ฐฐํฌ ๋ฐฉ๋ฒ• (์„œ๋ฒ„์—์„œ git pull+ssh ์ด์šฉ)

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ 1. nginx์˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ๊ณผ ์„ธ์…˜ ์œ ์ง€ (session storage ๋ฐฉ์‹ ํ™œ์šฉ) 2. nginx์˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์„ ์ด์šฉํ•œ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ํ•˜๊ธฐ 3. ์ผ๋ถ€ ์†Œ์Šค ์ˆ˜์ • ํ›„ ์ž๋™ ๋ฐฐํฌ ๋ฐฉ๋ฒ• (์„œ๋ฒ„์—์„œ git pull+ssh ์ด์šฉ) ๐Ÿ”ด ๋ณธ ๊ฒŒ์‹œ๊ธ€์€ ์ทจ๋ฏธ ๊ฐœ์ธ ๊ฐœ๋ฐœ์ž์˜ ์†Œ์†Œํ•œ ํ”„๋กœ์ ํŠธ์— ํ•œ์ •ํ•จ. ๐Ÿ”ด ์ด์ „์— ๊ณ„์† ์‚ฌ์šฉํ•˜์˜€๋˜ git push + github Action ์€ checkout ์„ ์‚ฌ์šฉํ•œ ๋ฐฉ๋ฒ•์ด์–ด์„œ ์„œ๋ฒ„์— ์žˆ๋Š” ๋ชจ๋“  ์†Œ์Šค๊ฐ€ ์‚ฌ๋ผ์ง€๊ณ , ๋‹ค์‹œ git clone ํ˜•ํƒœ๋กœ ๋ฐ›์•„์˜ค๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ, ์ฒจ๋ถ€ ํŒŒ์ผ ๋“ฑ ์„œ๋ฒ„์—์„œ ์ž๋™ ์ €์žฅ๋œ ํŒŒ์ผ๋“ค ๋˜ํ•œ ์‚ฌ๋ผ์ง€๊ฒŒ ๋˜์ง€์š”. ๐Ÿ”ด ๋˜ํ•œ, ํŒŒ์ผ ํ•˜๋‚˜๋งŒ ๋”ฑ ํ•œ์ค„ ์ˆ˜์ •ํ–ˆ๋Š”๋ฐ, ์œ„ ์ฒ˜๋Ÿผ ์„œ๋ฒ„์—์„œ ๋ชจ๋“  ์†Œ์Šค๋ฅผ ๋‹ค์‹œ ๋‚ด๋ ค๋ฐ›๊ณ , b..

    2. nginx์˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์„ ์ด์šฉํ•œ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ํ•˜๊ธฐ

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ 1. nginx์˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ๊ณผ ์„ธ์…˜ ์œ ์ง€ (session storage ๋ฐฉ์‹ ํ™œ์šฉ) 2. nginx์˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์„ ์ด์šฉํ•œ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ํ•˜๊ธฐ 3. ์ผ๋ถ€ ์†Œ์Šค ์ˆ˜์ • ํ›„ ์ž๋™ ๋ฐฐํฌ ๋ฐฉ๋ฒ• (์„œ๋ฒ„์—์„œ git pull+ssh ์ด์šฉ) ๐Ÿบ ๋ณธ ์ž‘์—…์€ ๋ฐ”๋กœ ์ด์ „ ๊ฒŒ์‹œ๊ธ€์˜ ์†Œ์Šค๋ฅผ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค. ๐Ÿบ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ๋ฅผ ์œ„ํ•œ ๋ฐฉ๋ฒ•์€ ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์žˆ๊ฒ ์ง€๋งŒ, ์—ฌ๊ธฐ์„œ๋Š” ์ทจ๋ฏธ ๊ฐœ๋ฐœ์ž๋กœ ๋Šฅ๋ ฅ์ด ์•„์ง ๋งŽ์ด ๋ถ€์กฑํ•œ ์ œ๊ฐ€ ์ƒ๊ฐํ•˜๊ธฐ์— ๊ฐ€์žฅ ๊ฐ„๋‹จํ•˜๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ตฌํ˜„ํ•ด ๋ณธ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๐Ÿ”ด ์ด์ „์— ๊ณ„์† ์‚ฌ์šฉํ•˜์˜€๋˜ git push + github Action ์„ ์‚ฌ์šฉํ•œ ๋ฐฉ๋ฒ•์„ ์ด๋ฒˆ์—๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด, ์•ž์—์„œ git push ํ›„ ์„œ๋ฒ„๋ฅผ ํ™•์ธํ•ด๋ณด๋ฉด, ์„œ๋ฒ„์— ์žˆ๋˜ ๋ชจ๋“  ํŒŒ์ผ๋“ค์ด ์‚ฌ..

    1. nginx์˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ๊ณผ ์„ธ์…˜ ์œ ์ง€ (session storage ๋ฐฉ์‹ ํ™œ์šฉ)

    ๐Ÿบ ๋ชฉ์ฐจ ๐Ÿบ(๋ณด์‹œ๋ ค๋ฉด ์•„๋ž˜ ๋”๋ณด๊ธฐ ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.) ๋”๋ณด๊ธฐ 1. nginx์˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ๊ณผ ์„ธ์…˜ ์œ ์ง€ (session storage ๋ฐฉ์‹ ํ™œ์šฉ) 2. nginx์˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์„ ์ด์šฉํ•œ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ํ•˜๊ธฐ 3. ์ผ๋ถ€ ์†Œ์Šค ์ˆ˜์ • ํ›„ ์ž๋™ ๋ฐฐํฌ ๋ฐฉ๋ฒ• (์„œ๋ฒ„์—์„œ git pull+ssh ์ด์šฉ) ์ด์ „ ๊ฒŒ์‹œ๊ธ€์—์„œ nginx์˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์„ ํ™œ์šฉํ•  ๋•Œ, html 1๊ฐœ ํŒŒ์ผ๋งŒ ์ด์šฉ์„ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋‹จ, ์ด์ „ ๋ฐฉ์‹์œผ๋กœ๋Š” ๋กœ๊ทธ์ธ ๋“ฑ์—์„œ ํ™œ์šฉํ•˜๋Š” ์„ธ์…˜ ๋“ฑ์€ ์œ ์ง€๊ฐ€ ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์„ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ์žˆ์ง€๋งŒ, ์—ฌ๊ธฐ์„œ๋Š” redis๋ฅผ ์ด์šฉํ•œ session storage ๋ฐฉ์‹์„ ํ™œ์šฉํ•ด ๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. 1. ํด๋” ๋ฐ ํŒŒ์ผ ์ƒ์„ฑ ๊ฐ€. ํด๋” ๋ฐ ํŒŒ์ผ์€ ์•„๋ž˜์™€ ๊ฐ™์ด ๊ตฌ์„ฑํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋‚˜. ์œ„ ํด๋” ๋ฐ ํŒŒ์ผ๋“ค์€ ์•„๋ž˜ ์—์„œ ๋‹ค์šด๋ฐ›..

    18. ์™€์ผ๋“œ์นด๋“œ ์ธ์ฆ์„œ ์ž๋™ ๊ฐฑ์‹  (docker + Let's Encrypt + wildcard ์ธ์ฆ์„œ + crontab)

    1. ์ธ์ฆ์„œ ๊ฐฑ์‹ ํ•˜๋ผ๋Š” ๋ฉ”์ผ ์ด์ „ ์‹œ๋ฆฌ์ฆˆ ๊ธ€ ์ค‘ 17๋ฒˆ ๊ฒŒ์‹œ๊ธ€์—์„œ ์™€์ผ๋“œ์นด๋“œ ์ธ์ฆ์„œ๋ฅผ ๋ฐœ๊ธ‰๋ฐ›์•„ ์‚ฌ์ดํŠธ์— ์ ์šฉ์„ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. Let's Encrypt ์ธ์ฆ์„œ๋“ค์€ 90์ผ๋งˆ๋‹ค ๊ฐฑ์‹ ์„ ํ•ด์•ผ ํ•˜๋Š”๋ฐ์š”. ์–ผ๋งˆ์ „ ์œ„์™€ ๊ฐ™์ด ์ธ์ฆ์„œ๋ฅผ ๊ฐฑ์‹ ํ•˜๋ผ๋Š” ๋ฉ”์ผ์ด ์™”์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‹ˆ, ์ด์ œ ๊ฐฑ์‹ ์„ ํ•ด์•ผ ๊ฒ ์ง€์š”? ํ•˜์ง€๋งŒ, 3๊ฐœ์›”๋งˆ๋‹ค ๋งค๋ฒˆ ์ˆ˜๋™์œผ๋กœ ๊ฐฑ์‹ ํ•˜๋Š” ๊ฒƒ์€ ๋„ˆ๋ฌด ๊ท€์ฐฎ๊ธฐ๋„ ํ•˜๊ณ  ๊นœ๋นก ์žŠ์„ ์ˆ˜๋„ ์žˆ์œผ๋‹ˆ, ์•„๋ž˜์ชฝ์—์„œ๋Š” crontab ๊ธฐ๋Šฅ์„ ์ด์šฉํ•˜์—ฌ ์ž๋™์œผ๋กœ ๊ฐฑ์‹ ๋˜๋„๋ก ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. 2. ๊ฐฑ์‹  ์ž‘์—… ์ „ ์ธ์ฆ์„œ ํ™•์ธํ•ด ๋ณด๊ธฐ => ํ•„์ˆ˜ ์ž‘์—…์ด ์•„๋‹Œ ์ฐธ๊ณ ์šฉ์ž„. ๊ฐ€. ์ธ์ฆ์„œ ๊ฒ€์ฆํ•ด๋ณด๊ธฐ sudo docker run --rm --name certbot \ -v /etc/letsencrypt:/etc/letsencrypt \ certbot/dns-c..

728x90
๋ฐ˜์‘ํ˜•