라벨이 hub인 게시물 표시

Docker , GitHub Action을 이용해서 EC2(AWS)에 자동 배포(docker hub)하기 - React사용

이미지
 이번 글에서는 Docker와 GitHub Action을 이용해서 CI/CD를 구현하도록 하겠습니다. AWS의 EC2에 자동 배포하도록 블로그 글을 작성하겠습니다. 1. 우선사항 1) Push를 할 GitHub 저장소 생성( 링크 ) - private 2) GitHub Token 생성 - classic 방법으로 생성 - repo, workflow, write:packages, delete:packages가 선택 되어 있어야 한다. 3) AWS 계정 4) 개발 PC에 Docker가 설치 되어 있어야 한다.( Linux Link ,  Window Link ) 5) docker hub 계정(DOCKER_USERNAME) 및 비밀번호(DOCKER_PASSWORD) 대용으로 사용할 token - 만약 다수의 private repository를 운영할려면 해당 링크 를 통해 유료 결제를 해야한다. 위 우선사항이 모두 되었으면 아래는 나의 로컬 환경이다. OS : macOS Ventura 13.6.1 Docker Version : 24.0.7 Node Version : 20.10.0 1. React Project를 생성한다. ( 링크 ) 2. GitHub Repository와 연동 git init git add . git commit -m "first commit" git branch -M master git remote add origin https://github.com/Alex-Choi0/CICD-EC2-Docker.git git push -u origin master 3. Dockerfile 생성 및 테스트 1) Dockerfile 생성 FROM node:20.10.0 # 경로 설정하기 WORKDIR /app # package.json 워킹 디렉토리에 복사 (.은 설정한 워킹 디렉토리를 뜻함) COPY package.json . # 명령어 실행 (의존성 설치) RUN npm install # 현재 디렉토리의 모든 파일을 도커 컨테이너의 디렉토리에 ...

docker 도커허브(docker hub)에 이미지 받기(Pull)

이미지
 이제 이미지를 'docker hub'에서 받도록 하겠습니다. 'docker hub'에 이미지 올리는 법(Public)에 대해서 알고 싶으시면 아래 링크를 참고해 주시기 바랍니다. 링크1 : docker 도커허브(docker hub)에 이미지 올리기(Push) 사진1) 도커허브에서 참고해야 할 사항 docker hub에 올려져 있는 레파지토리 이미지를 받습니다. $ docker pull [REPOSITORY_NAME]:[TAG OPTIONAL] copy 사진2) 이미지를 도커 허브에서 받음 사진2에서 도커허브로부터 이미지를 받을것을 확인할수 있습니다. 이제 이 이미지로 컨테이너를 생성해서 사용하시면 됩니다. 컨테이너 생성에 대해서는 아래 링크를 확인해 주시기 바랍니다. 링크2: docker 도커를 이용하여 컨테이너(CONTAINER) 생성하기 : NestJS 사용 해당 이미지는 Public 이미지 이기 때문에 누구든지 받으실수 있습니다. 개발자 디스코드 서버 링크

docker 도커허브(docker hub)에 이미지 올리기(Push)

이미지
  사진1) 도커허브 웹사이트 GitHub와 마찬가지로 도커허브(docker hub)또한 해당 이미지를 올리거나 내릴수 있습니다. 하지만 지금은 이미지를 올리는 것에 이 글을 작성하도록 하겠습니다. 만약 도커의 이미지와 컨테이너를 생성하는 방법에 대해서 모르시면 아래 링크를 참고해 주시기 바랍니다. 링크1: docker 도커를 이용하여 이미지(IMAGE) 생성하기 : NestJS 사용 링크2: docker 도커를 이용하여 컨테이너(CONTAINER) 생성하기 : NestJS 사용 사진2) 도커 레파지토리 페이지 사진2에 해당되는 페이지에서 'Create Repository'를 선택해 줍니다. 사진3) 레파지토리 생성 docker hub 사이트에서 이미지를 저장할 레파지토리를 생성합니다. 이때 'Public'와 'Private'이 있습니다. 말 그대로 'Public'는 다른 개발자한테 열려있는 이미지 입니다. 'Private'는 해당 계정만 사용할수 있는 이미지 입니다. 지금은 Public로 진행하겠습니다. 사진4) 레파지토리 생성 생성이 완료되면 해당 레파지토리로 이미지를 올릴수 있습니다.  사진5) 이미지 생성 Local에서 해당 이미지를 생성하는데 주의할 점이 있습니다. 이미지의 Name이 docker hub에서 해당 레파지토리의 Name과 일치해야 합니다. 사진3에서 'alexchoi1/firstdockerhub'가 레파지토리 Name입니다. 그러면 Local의 이미지 또한 'alexchoi1/firstdockerhub'가 되어야 합니다.  $ docker push [REPOSITORY_NAME]:[TAG OPTIONAL] copy 사진6) docker hub로 이미지 push 이제 해당 이미지를 docker hub로 일어줍니다. 사진7) docker hub로 이미지 push 모든것이 정상적으로 올라가면 사진7과 같이 해당 레파지토리...