Search

wsi-api-release

buildspec-docker.yml

version: 0.2 env: variables: AWS_REGION: "REGION" ECR_REPO_NAME: "ECR_REPO_NAME" AWS_ACCOUNT_ID: "AWS_ACCOUNT_ID" phases: install: runtime-versions: python: 3.8 pre_build: commands: - echo Logging in to Amazon ECR... - aws ecr get-login-password --region $AWS_REGION | docker login --username AWS --password-stdin $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com build: commands: - python3 -m compileall src/app.py - mv src/__pycache__/*.pyc ./app.pyc - time=$(date -d "+9 hours" +'%y%m%d%H%M%S') - docker build -t $ECR_REPO_NAME . - docker tag $ECR_REPO_NAME:latest $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/$ECR_REPO_NAME:$time - docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/$ECR_REPO_NAME:$time post_build: commands: - echo Build completed on `date` artifacts: files: - app.pyc
YAML
복사

Dockerfile

FROM python:3.8-alpine WORKDIR /app COPY app.pyc . RUN pip3 install --no-cache-dir flask && apk add --no-cache curl && rm -rf /root/.cache/ EXPOSE 80 CMD ["flask", "run", "host=0.0.0.0", "port=80"]
Docker
복사

Git Repo Push

Name : wsi-api-release

Github Repo 선택 후 소스 버전 release 입력

아마존 리눅스 선택 후 이미지 버전 5.0 선택 IAM Role : wsi-api-release-role

환경변수 입력

buildspec.yml 파일 사용 선택 후 입력

로그 활성화

ECR Push 정책 할당

빌드 시작누르면 오류남 → Github 변경사항으로 빌드 시작시 성공