프로젝트 - 기술

[deploy] EC2, docker, jenkins

whitedeveloper 2023. 2. 6. 13:20

#.AWS EC2 인스턴스에 연결(ssh)

ssh -i {키 이름} {user.name}@{public DNS}

!!-user.name 주의(본인은 ubuntu로 ec2생성해서 user.name = ubuntu)

welcome to ubuntu ....나오면 성공

 

#.도커 설치 공식문서

https://docs.docker.com/engine/install/ubuntu/

새 호스트 시스템에 처음으로 Docker 엔진을 설치하기 전에 Docker 리포지토리를 설정해야 합니다.

그런 다음 리포지토리에서 Docker를 설치하고 업데이트할 수 있습니다.

저장소 설정

  1. HTTPS를 통해 리포지토리를 사용할 수 있도록 패키지 인덱스를 업데이트하고 apt패키지를 설치합니다 .apt
  2. $ sudo apt-get update
    
    $ sudo apt-get install \
        ca-certificates \
        curl \
        gnupg \
        lsb-release
    
  3. Docker의 공식 GPG 키를 추가합니다.
  4. $ sudo mkdir -p /etc/apt/keyrings
    $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    
  5. 다음 명령을 사용하여 리포지토리를 설정합니다.
  6. $ echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
      $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    

도커 엔진 설치

  1. apt패키지 색인 을 업데이트합니다 .
  2. $ sudo apt-get update
  1. Docker Engine, containerd 및 Docker Compose를 설치합니다.

    최신 버전을 설치하려면 다음을 실행하십시오.

     $ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
    

     

    특정 버전의 Docker 엔진을 설치하려면 먼저 리포지토리에서 사용 가능한 버전을 나열하십시오.

    # List the available versions:
    apt-cache madison docker-ce | awk '{ print $3 }'

    5:20.10.16~3-0~ubuntu-jammy
    5:20.10.15~3-0~ubuntu-jammy
    5:20.10.14~3-0~ubuntu-jammy
    5:20.10.13~3-0~ubuntu-jammy

     

    원하는 버전을 선택하고 다음을 설치합니다.

     

    $ VERSION_STRING=5:20.10.13~3-0~ubuntu-jammy
    $ sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-compose-plugin

     


  2. hello-world이미지 를 실행하여 Docker 엔진 설치가 성공했는지 확인하십시오 .
  3. $ sudo docker run hello-world

hello world 실행결과

#.docker가 가지고 있는 이미지 확인

sudo docker images

 

#.실행 중인 컨테이너 확인

sudo docker ps -a

 

#.image제거

sudo docker rm {container ID}

 

#.jenkins 도커에 설치

젠킨스 설치

-docker pull jenkins/jenkins:lts

 

 

!!-이런 결과가 나온다면 권한을 주어야한다.

permission denied while trying to connect to the Docker daemon socket

$ sudo groupadd docker

docker group에 해당 유저를 추가

$ sudo usermod -aG docker $USER

로그아웃 후 다시 로그인하거나 다음 명령어 실행시켜야 적용

$ newgrp docker

#.젠킨스 이미지 사용법

docker run -p 8080:8080 -p 50000:50000 jenkins

이렇게 하면 /var/jenkins_home에 작업 공간이 저장됩니다. 플러그인 및 구성을 포함하여 모든 Jenkins 데이터가 거기에 있습니다. 이를 영구 볼륨으로 만들고 싶을 것입니다(권장).

docker run -p 8080:8080 -p 50000:50000 -v /your/home:/var/jenkins_home jenkins

이렇게 하면 젠킨스 데이터가 /your/home호스트에 저장됩니다. /your/home컨테이너(jenkins user - uid 1000)의 jenkins 사용자가 액세스할 수 -u some_other_user있는지 확인 하거나 docker run.

볼륨 컨테이너를 사용할 수도 있습니다.

docker run --name myjenkins -p 8080:8080 -p 50000:50000 -v /var/jenkins_home jenkins

그런 다음 myjenkins 컨테이너에 볼륨이 있습니다

 

연결 후 연결 포트로 켜지지 않는다면 ec2 인스턴스에 들어가서 인바운드 규칙 포트번호 열어주면 된다.

 

연결되면 나오는 글

설치하라고 하는 것들 설치하고

계정 등록