전체 글

Server/DevOps

[AWS] EC2 Docker 설치 및 컨테이너 실행 (+NGINX)

EC2에 NGINX를 설치해서 Reverse Proxy로 사용하도록 설정하는 과정과 AWS EC2를 생성한 뒤, 도커를 설치하고 도커 이미지를 컨테이너에 실행하는 과정에 대한 기록 EC2에 NGINX설치하기 amazon-linux를 사용하고 있기 때문에, amazon-linux ec2는 NGINX를 아래의 명령어로 입력해서 설치해야 한다. sudo amazon-linux-extras install nginx1 // nginx 시작 sudo systemctl start nginx // nginx.conf 같은 설정 파일을 변경해 주었을 때, 재시작 sudo systemctl restart nginx // nginx 상태 확인 sudo systemctl status nginx nginx.conf를 따로 변경..

Server/DevOps

[AWS] EC2 생성 및 접속

AWS EC2 생성 1. EC2 > 인스턴스 > 인스턴스 시작을 선택 (Region을 서울로 선택 후) 2. AMI는 아마존 리눅스를 선택 (선택하기 전 조사 과정은 이전 포스팅에 기록) 인스턴스 유형은 프리티어 사용가능인 t2.micro로 선택했고, 키 페어를 생성했다. 나머지 세팅은 그대로 두었고, 인스턴스 시작 3. 인스턴스 생성 시, 인스턴스를 중지하고 다시 시작할 때, 두 경우 모두 새 IP가 할당된다고 한다. 매번 접속해야하는 IP가 변경되면 번거로우므로 인스턴스의 IP가 변경되지 않고 고정 IP를 가지게 해야하는데, 이는 탄력적 IP 주소 할당을 하면 된다. EC2 > 네트워크 및 보안 > 탄력적 IP 메뉴를 선택한 뒤 탄력적 IP주소할당을 선택하고, 탄력적 IP를 하나 생성한다. ** 이때..

Server/DevOps

[AWS] EC2 리눅스 배포판 선택

EC2 리눅스 배포판 선택에 앞서, 어떤 걸 선택하면 좋을지 먼저 조사 후 작업을 진행해보려 한다. Reference에 적혀있는데 테코블 블로그에 정리가 잘 되어있어서 적어보며 공부해 보았다. 리눅스란? 먼저 리눅스는 커널이라는 운영체제의 일종 운영체제는 컴퓨터 시스템 중앙에서 시스템을 구성하는 자원들을 관리하며 시스템을 작동시키는 구성요소라고 한다. (Windows, MacOS 등) 운영체제는 CPU와 같은 자원 사용을 효율적으로 사용할 수 있게 도와주는 역할도 하고 있다. 커널이 바로 이런 역할을 하는데 메모리 위에 항상 상주하며 작동한다. 커널은 운영체제의 역할 중에서 프로그램들과 하드웨어 사이를 소통, 제어해주는 역할을 한다. 운영체제를 위한 커널에도 여러 종류가 있는데, 이 중 리눅스라는 커널을..

Server/DevOps

DevOps 팀의 Phase1 기록

DevOps 팀으로 정해진 부서가 따로 없기 때문에, 내가 DevOps 팀이라 생각하고(?) 계획을 세워 보았다. 구축한 경험을 해당 카테고리에 적어 놓으면 또 다른 회사에 필요한 누군가에게 도움이 될 수도 있고, 나중에 내가 이 글들을 읽고 오늘을 추억할 수도 있을 것 같아서 글을 적어보았다. 먼저 DevOps팀 Phase 1에서 할 일은 다음과 같다. 1. Docker 이미지 만들기 2. 서버 구축하기 (AWS EC2) 3. CI/CD 구축하기(배포 자동화) 설계 단계에서 쿠버네티스의 사용에 대한 고민도 했지만 일단 Phase 1에서는 하나의 컨테이너에서 잘 작동하는 것을 확인하는 것을 목표로 두자는 결론을 내렸다. ++ 22.08.09 추가 현재까지 진행한 방식을 정리해보면, 1. 인스턴스는 젠킨스..

Server

[AWS] EC2 템플릿, 스냅샷

요약 EC2 설정을 복제하는 것 → 템플릿 EC2 AMI 와 볼륨(데이터)를 복제하는 것 → 스냅샷 (비용 청구됨) 시작 템플릿 기존 EC2 인스턴스의 AMI, 키페어, 보안그룹, 볼륨 크기 정도만 복제. 데이터를 복구하는 것은 아니므로 재설치 필요 (안에 내용물 복제 불가) 템플릿을 만들어 두면 같은 조건의 인스턴스 생성할 때 편할 것 같음. 사용법: 인스턴스 선택 > 템플릿 생성 > 템플릿으로 인스턴스 생성 AMI, 스냅샷 기존 EC2 인스턴스의 이미지와 볼륨을 복제하여 인스턴스를 생성할 수 있음 (안에 내용물까지 복제 가능) AMI와 스냅샷이 존재하면 인스턴스에 문제가 생겼을 때, AMI와 스냅샷만으로 인스턴스를 새로 만들어서 복구할 수 있을 것 같음. 볼륨만 스냅샷으로 만들어서 인스턴스 생성에 추..

Server

[AWS] 탄력적 IP 주소 삭제

AWS > EC2 > 탄력적 IP에 접속 후, 삭제하고 싶은 탄력적 IP를 선택 합니다. 선택 후 작업 > 탄력적 IP 주소 릴리스 를 선택하면 다음과 같은 화면이 나옵니다. 릴리스를 선택하면 탄력적 IP가 삭제된 것을 확인할 수 있습니다.

Python/Flask

Flask 프로젝트 생성, Pycharm 환경에서 실행 (윈도우)

Flask 프로젝트 생성 플라스크 프로젝트는 하나의 웹 사이트라 생각하면 된다. 즉, 플라스크 프로젝트를 생성하면 웹 사이트를 한 개 생성하는 것과 같다. 그리고 플라스크 프로젝트 안에는 보통 한 개의 플라스크 애플리케이션이 존재한다 프로젝트 디렉토리 생성 플라스크 프로젝트는 여러 개가 될 수 있으므로 프로젝트를 모아둘 프로젝트 루트 디렉토리 생성을 해야한다 예제에서는 C:\projects 디렉토리를 프로젝트들의 루트 디렉토리로 정하고 진행한다 C:\> mkdir projects C:\> cd projects 루트 디렉토리에서 저번 포스팅에서 만든 가상 환경에 진입한다 C:\projects> C:\venvs\myproject\Scripts\activate 플라스크 프로젝트를 담을 myproject 디렉토..

Python/Flask

Flask란? Flask 개발 환경 준비, Flask 설치

Flask란? Flask란 마이크로 웹 프레임워크 플라스크는 파이썬으로 작성된 마이크로 웹 프레임워크이다 프레임워크를 간결하게 유지하고 확장할 수 있도록 만들어져있다 아래의 코드만으로 동작할 수 있을만큼 간결하다 from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello world!" if __name__ == "__main__": app.run(debug=True, port=5000) 이 코드만으로 locallhost:5000/에서 'Hello world!'를 출력할 수 있다고 한다 플라스크에는 폼, 데이터베이스를 처리하는 기능이 없다. 장고는 프레임워크 자체에 폼과 데이터베이스를 처리하는 기능이 포함되..

mean-ji
저년차 기록들