- string
- DI
- spring
- @transactional
- jpa
- sql
- spring boot
- 자바
- SSL
- Git
- ORM
- 스프링부트
- 문자열
- 데이터베이스
- 스프링
- Django
- mysql
- AWS
- java
- 프로그래머스
- select
- nginx
- 1차원 배열
- spring mvc
- PYTHON
- session
- spring security 6
- Docker
- join
- springboot
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
목록Docker (7)
개발하는 자몽
적용 전 준비할 코드 nginx.conf worker_processes auto; events { worker_connections 1024; } http { ... # for load balancing upstream project_server { server project_server2:8000; server project_server1:8000; keepalive 1024; } server { listen 80; location / { proxy_pass http://project_server/; # upstream 이름 proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; ... } ... ..
Docker image, container image 이미지는 도커 컨테이너 생성에 관한 명령이 담긴 템플릿(read-only)입니다. 애플리케이션을 실행하는데 필요한 소스 코드, 런타임 환경, 시스템 라이브러리 등 모든 설정들이 포함되어 있습니다. https://docs.docker.com/get-started/overview/#images container 도커 컨테이너는 이미지의 실행 가능한 인스턴스로, 도커 이미지를 기반으로 코드를 위해 격리된 공간을 의미합니다. https://docs.docker.com/guides/walkthroughs/what-is-a-container/ https://docs.docker.com/get-started/overview/#containers image와 con..
static file 관리 Django 프로젝트를 배포할 때 `DEBUG` 설정은 `False`로 설정하게 된다. 이미지가 저장된 경로로 API 요청하는 것에 대해서 `True`일 때는 `MEDIA_ROOT`와 `MEDIA_URL` 설정만 하면 이미지가 저장된 경로로 API 요청을 했을 때 200 응답을 받을 수 있다. 하지만 `False`일 때 요청을 하면 404 에러가 발생한다. static 파일 관리는 `INSTALLED_APPS`의 `django.contrib.staticfiles` 모듈이 담당하고 있는데, settings.py의 `DEBUG`를 `False`로 바꾸면 동작하지 않는다. 따라서 static 파일의 처리는 Apache나 Nginx와 같은 웹 서버가 담당하게 된다. 관련 내용은 여기를..
→😎Nginx의 로드 밸런싱 기능을 사용하게 된 이유는 아래 글을 참고😎 서버 부하 테스트 with Locust 개발 중인 애플리케이션에 대해서 조언받는 분에게 부하 테스트(Load Test)를 해보았냐는 질문을 받았다. 항상 개발을 하는 것과 해당 기능을 테스트하는 것에만 집중했지, 서버 그 자체를 테스트 backend-jaamong.tistory.com 위와 같은 이유로 로드 밸런싱을 적용하게 되었다. Nginx를 사용한 이유는 적용 방식이 간단하고 L4, L7 스위치로 하는 방법과 달리 비용이 들지 않기 때문이다. 그리고 Nginx를 도입하기 전 같은 기능을 제공하는 AWS의 ELB(Elastic Load Balancing)와도 비교해 보았다. 자세한 내용은 잘 정리해 둔 아래 글을 참고! AWS ..
목적`django-crontab`을 사용하여 쉽게 `crontab`을 적용해 보고, 도커 컨테이너에서 실행시켜 보자! cron & crontab & cronjob`cron` : 실행 도구`crontab`: `cron`이 실행할 일(job)이 담긴 파일`cronjob`: `crontab`에 작성한 일(job) django-crontab 설정 with Docker`pip`로 `django-crontab`을 설치합니다. pip install django-crontab 설치 후 `settings.py`에 아래 코드를 추가합니다.INSTALLED_APPS = [ ... 'django_crontab',]...CRONJOBS = [ ('*/30 * * * *', 'app.cron.hello', '>> /..
이전 포스트 [Spring/EC2/MySQL] SpringBoot와 EC2 - Docker - MySQL 연동 이전 포스트 [AWS EC2/Docker] EC2 생성, EC2에 Docker 설치, Docker에 MySQL 띄우기 목표 AWS EC2 인스턴스를 생성하고 EC2 상에서 Docker를 설치해 보고 Docker에서 MySQL을 띄워보자 AWS EC2 인스턴스 생성하기 1. AWS backend-jaamong.tistory.com 이번에는 Docker에서 SpringBoot를 띄워보자. 띄울 SpringBoot에는 당연히 의존성에 spring web이 있어야 한다. implementation 'org.springframework.boot:spring-boot-starter-web' 1. Docke..
목표 AWS EC2 인스턴스를 생성하고 EC2 상에서 Docker를 설치해 보고 Docker에서 MySQL을 띄워보자 AWS EC2 인스턴스 생성하기 ❗ 24년도에 인스턴스 생성 과정을 다룬 포스트를 다시 작성했으니, 최신 글을 원한다면 여기로! 1. AWS 로그인 후 EC2를 선택하고 아래 화면에서 인스턴스 시작을 클릭한다. 2. 원하는 이름을 입력한다. 3. 우분투 상에서 진행할 예정이므로 OS는 Ubuntu를 선택하고, 22.04 LTS 버전을 선택한다. 4. 인스턴스 유형 중에서 t2.micro는 프리티어로 사용할 수 있다. 하지만 Docker를 띄우고 애플리케이션까지 운영하려면 메모리가 부족할 가능성이 높아서 t3.small로 선택했다. 5. 키 페어가 없다면 새 키 페어 생성을 클릭하여 생성한..