DevOps Deployment Automation with Terraform, AWS and Docker 강의

yo·2020년 9월 15일
0

DevOps:

The implementation of workflows that allow you to easily deploy and destroy your infrastructure.

sometimes things take longer than expected.
build problem solving muscle
identify the problem & write it down

MFA

Multi-Factor Authentication (MFA)

IAM user

An AWS Identity and Access Management (IAM) user is an entity that you create in AWS to represent the person or application that uses it to interact with AWS. A user in AWS consists of a name and credentials.

AWS valut

AWS 인증 정보를 로컬 머신에 안전하게 보관하도록 도와주는 도구(공짜)

django docs:

User a proxy in front of your application to serve static files(Images, JS, CSS)
장고도 static파일을 서비스 할 수 있지만 비효율적이다. Web server가 더 효율적으로 처리할 수 있다.
NGINX를 사용해 Proxy서버를 만들고 여기서 모든 static파일을 처리한다.

이렇게 해서 1)Frees up load on application, 2)Serves static files efficiently 효과를 거둘 수 있다.
이를 위해
1)Add a new project in Gitlab for proxy application
2) Create a Dockerfile + NGINX configurations를 한다.

AWS ECR

Amazon Elastic Container Registry
stor Docker images기능 제공하는 서비스.
very similar to docker hub which allows you to build and push images
docker-hub와 차이점: control access with IAM policies

절차
1. create new registry in ECR(Amazon Elastic Container Registry)
2. Create an IAM user

Base Image(Docker)

Image that Docker starts with and we build on top of, in order to create our application

alpine

light-weight,
Linux operating system designed for Docker containers,
NO unnecessary packages, allows you to add thins specific to your application

Dockerfile 명령어

[from]
FROM instruction을 사용하여 base image를 지정

[RUN]
패키지 설치 등에 사용, image layer를 만들어 냄.

[copy], [add]
호스트OS의 파일 또는 디렉토리를 컨테이너 안의 경로로 복사

[user]
RUN, CMD, ENTRYPOINT와 같은 명령을 실행하기 위한 특정 사용자를 지정해야 하는 상황에서 사용
USER 명령을 사용하기 위한 사용자 계정이 존재 해야 한다.

[ENV]
환경변수 지정

[CMD]
CMD를 사용하여 docker container가 시작할때 실행할 커맨드를 지정할수 있다
출처 https://rampart81.github.io/post/dockerfile_instructions/

profile
Never stop asking why

0개의 댓글