분류 전체보기
-
Dockerfile로 React 개발 환경 구축하기메모 및 기타 2021. 5. 25. 13:38
1. 개발환경 이미지 빌드 - docker file 생성 FROM node WORKDIR /app ENV PATH /app/node_modules/.bin:$PATH WORKDIR / RUN npx create-react-app my-app - image build docker build -t test-image . - container 생성 docker run -it --name test -p 3000:3000 test-image /bin/bash - IDE로 접속 2. github source 사용할 때 - Pull한 후, github 폴더 내에 Dockerfile 생성 FROM node:12.16.2 as builder # 작업 폴더를 만들고 npm 설치 RUN mkdir /usr/src/app W..
-
django web container에서 AWS RDS 연동하기AWS 2021. 5. 16. 00:09
다음과 같은 순서로 진행한다. 1. AWS에서 RDS 인스턴스 생성하기 2. container 생성하고, django web 올리기 3. django의 RDS 연결 설정하기 1. AWS에서 RDS 인스턴스 생성하기 1) RDS 파라미터 그룹 만들기 - 데이터 베이스에서 한글을 사용할 수 있도록, 파라미터 그룹을 생성한다. - 생성 후, character 검색 -> utf8로 설정 2) RDS 인스턴스 생성 - 필자는 프리티어 옵션을 사용하므로 프리티어 템플릿을 선택하고 마스터 사용자 이름, 마스터 암호는 db에서 사용할 것이므로 따로 기억한다. - 로컬 컴퓨터에서 작업할 것이므로 퍼블릭 엑세스를 설정 - 자동 백업은 꺼준다. 3) 보안그룹 설정 - 인바운드 규칙을 편집하여 외부에서 접근할 수 있게 설정 ..
-
django 웹서버 Jenkins으로 간단한 CI/CD 구축하기메모 및 기타 2021. 5. 9. 02:27
연습을 위해 다음과 같은 구성으로 구축했다. 요약하자면 깃허브로 push할 때마다 깃허브와 연동되어 있던 docker hub에서는 Dockerfile을 통해 빌드가 일어난다. 빌드되면 docker hub의 webhook을 이용해 jenkins로 하여금 docker container 형태로 django sever를 EC2에 배포한다. 1. Docker file 만들기 다음과 같은 형태로 Dockerfile과 django webserver가 있는 project파일을 구성한다. FROM sjoh0704/django:latest RUN pip3 install django WORKDIR /usr/src/app COPY . . WORKDIR ./project CMD ["python3", ..
-
자료구조: Array Hash Table 구현하기 (feat. c++)알고리즘/자료구조 2021. 5. 8. 21:01
Characteristic: - HashTable class is a array table class with hash function Operations: - insert - lookup - deletKey - dump #include #include using namespace std; const int MAX_TABLE = 11; template class HashTable { public: HashTable(); void insert(const tableKeyType& key, const tableDataType& data); bool lookup(const tableKeyType& key, tableDataType& data); void deleteKey(const tableKeyType& ke..
-
클라우드: 쿠버네티스 인그레스(Ingress) 실습하기(feat.minikube)K8S 2021. 5. 3. 16:57
이번 포스팅은 쿠버네티스의 Ingress obejct에 대해 다룬다. 이전에 다루었던 Nodeport service는 외부의 트래픽을 그냥 받아들였다면 이번에 사용해볼 Ingress는 외부의 트래픽을 어떻게 처리할 것인지 결정한다. 인그레스 오브젝트가 담당할 수 있는 기능은 크게 다음과 같은 것들이 있다. 1. 라우팅 2. 도메인처리 3. SSL/TLS 보안처리 그리고 이번 실습은 라우팅만 사용해보면서 인그레스에 대한 감을 익힌다. 참고로 필자는 미니큐브를 이용하여 인그레스를 사용하고 다음과 같은 구조로 nginx를 배포할 것이다. 구조에 대해 간략하게 설명하자면 클러스터에서 외부의 트래픽을 제일 처음으로 받는 서버는 인그레스 컨트롤러 서버이다. 그리고 우리는 인그레스 컨트롤러 서버에 원하는 인그레스 규..
-
Python: Pillow 라이브러리 정리(이미지 편집, 이미지 필터, tkinter활용)Python 2021. 5. 2. 21:33
pillow는 이미지 편집을 위한 라이브러리 1. 이미지 크기와 포멧정보 보기 from PIL import Image img = Image.open('gif/panda.gif') print(img.size) # (900, 1000)의 크기로 출력 print(img.format) # gif 포멧으로 출력 2. 이미지 잘라내기 from PIL import Image img = Image.open('gif/panda.gif') print(img.size) print(img.format) # 이미지 잘라내기 xy = (100, 200, 600, 700) # (100, 200), (600, 700)을 지나는 직사각형으로 자른다. crop_img = img.crop(xy) # crop 메서드를 이용해서 자른다. c..
-
클라우드: Django 웹서버 K8S NodePort로 배포하기K8S 2021. 4. 28. 21:02
우선 NodePort service에 대해서 잘 모른다면 다음을 참고하자. 클라우드: 쿠버네티스 서비스(Service) ClusterIP와 NodePort 실습하기 이전의 경우에서는 kubectl describe 커맨드로 포드의 내부의 IP를 찾고, 마스터노드를 통해 포드에 직접 접근했다. 네트워크: 쿠버네티스 포드(Pod) 오브젝트 사용하기 쿠버네티스는 대부분의 리소스 seungjuitmemo.tistory.com 이번 포스팅은 필자의 개인 서버에 쿠버네티스 NodePort 방식으로 전에 만들었던 django 웹을 배포할 것이다. 예전에 잘 쓰지 않는 노트북에 우분투를 설치해서 서버로 사용중인데 단지 NodePort방식으로 웹서버를 배포해보면 어떨까 싶어서 이 포스팅을 작성한다. 대략적인 아키텍처는 다..
-
Python: Window programming Tkinter 라이브러리 정리 2Python 2021. 4. 16. 19:50
Python: Window programming Tkinter 라이브러리 정리 1 1. 윈도창 조절 from tkinter import * # Tk객체 생성 window =Tk() window.title("연습하기") # 기본창 사이즈 window.geometry("400x100") # 창 크기 조절하.. seungjuitmemo.tistory.com 1. 마우스 이벤트 처리 from tkinter import * from tkinter import messagebox def clickLeft(event): messagebox.showinfo("마우스", "마우스 왼쪽 버튼이 클릭됨") def clickRight(event): messag..