목록Infra (16)
현제의 현재이야기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/wuglP/btsytXvtdCj/Ii4t32GZxhbqUQGj15Vvg1/img.png)
기존 나의 github action workflow에 큰 불만이 있었다. - name: Connect and Deploy to EC2 uses: appleboy/ssh-action@v0.1.6 with: host: ${{ secrets.WAS_HOST }} username: ec2-user key: ${{ secrets.KEY }} script: | docker stop $(docker ps -a -q) docker rm $(docker ps -a -q) cd /home/ec2-user/ aws ecr get-login-password --region ap-northeast-2 | docker login --username AWS --password-stdin 279381197488.dkr.ecr.ap-..
원래는 ACM과 Route53으로 https를 붙이려고 했으나, 우리는 서버가 두 개 였기에 하나의 호스팅 영역의 네임서버 밖에 등록하지 못하기에... https를 서버에서 달아줘야 하는 소요가 발생했다. 처음에 letsencrypt로 달려고 했으나, 시간이 없어서 zerossl에서 직접 달았다. https://help.zerossl.com/hc/en-us/articles/360058295894-Installing-SSL-Certificate-on-NGINX 중요한 점은 ca~.crt와 certificate.crt를 합쳐야 한다는 점이다. 순서를 맞춰서 합친 다음에 도커 볼륨을 맞춰주고 nginx 파일을 수정하였다. version: '3' services: nginx: build: ./config/ngi..
https://zemba.tistory.com/60 M1 쿠버네티스 MiniKube 설치 MiniKube란? 쿠버네티스 클러스터를 구축하기 위해서 노드를 구성하고 마스터, 노드로 분리하며 관련 설정을 적용해도 클러스터를 구축할수 있다. 그러나 단순히 체험을 통해 쿠버네티스를 경험 zemba.tistory.com https://minikube.sigs.k8s.io/docs/start/ minikube start minikube is local Kubernetes minikube.sigs.k8s.io https://velog.io/@pinion7/macOs-m1-환경에서-kubernetes-시작하기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/qTU55/btsqLvuktXj/74KnPDXkkLSokk98LrOHn1/img.png)
AWS 작업을 내가 맡고 있었는데 프론트 배포 + CICD를 구축해보려고 하였다. 온갖 오류를 만났기 때문에 기억을 잃지 않기 위해 기록을 하려고 한다. S3 버킷 버킷 이름은 S3만 배포할 때를 대비하여 실제 도메인 이름을 적어준다. 그리고 ACL을 활성화하고 객체 라이터로 변경한다. AWS CLI에 접속하기 위해서이다. 모든 퍼블릭 엑세스 차단을 해제한다. 그리고 버킷 정책을 편집한다. 정책 생성기에서 S3 선택, principle * 입력, GetObject 액션을 선택, ARN 뒤에 /*를 입력한다. 그리고 정적 웹 사이트 호스트 편집에 들어가 활성화를 눌러준다. 그리고 인덱스 및 오류 문서를 index.html로 설정한다. CloudFront 배포 생성 클릭 원본 도메인에 S3 버킷을 클릭하고 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/MlpLl/btsqESuCqBR/ySHQivG84LtIuxkBAGOCaK/img.png)
택시를 배정하는 로직을 비동기로 처리해야하는 소모가 발생했다. 비동기 처리를 위해 celery를 사용하기로 했고, 그에 따른 브로커를 redis로 이용하기로 했다. Celery 해결해야 하는 의문점 처음에 redis_queue라는 컨테이너 이름으로 레디스를 6381포트로 띄어줬었다. # docekr compose redis_queue: image: redis:7 ports: - "6381:6379" #settings.py CELERY_BROKER_URL = 'redis://redis_queue:6381/0' CELERY_RESULT_BACKEND = 'redis://redis_queue:6381/0' 이렇게 하니깐 celery에서 redis를 찾지 못하더라. 왜지? 그래서 그냥 기존의 django cha..
소켓을 개발할 필요가 생겨서 우리 서버에 django-channel을 연결해보았다. 애초에 gunicorndms wsgi로 동기 서버를 담당하는 것이었다. 비동기 서버를 돌려야했기에 daphne 서버로 돌리기로 마음먹었다. 서버가 커지면 컨테이너 두개를 돌리고 동기는 gunicorn django 서버, 비동기는 daphne 서버로 포트를 달리해서 compose에 올리라고 했다. 그런데 해커톤 서버에 그렇게까지 할 필요는 없을 것 같아서 daphne 서버만 사용하기로 했다. redis: image: redis:7 ports: - "6379:6379" 우선 레디가 필요하니 레디스를 올리고 CHANNEL_LAYERS = { 'default': { 'BACKEND': 'channels_redis.core.Red..