ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • (Redhat) Docker 환경 세팅
    Docker & Kubernetes 2024. 5. 8. 17:41

    [docker 패키지 저장소 url]
    https://download.docker.com/linux/rhel/docker-ce.repo

     

    1. docker 레포지토리 구성

     

    $ dnf     config-manager     --add-repo      https://download.docker.com/linux/rhel/docker-ce.repo


     

    2. docker 환경에 필요한 패키지 설치

    $ yum    install     docker-ce                  
    $ yum    install     docker-ce-cli         
    $ yum    install     containerd.io                     

     

     

    $ yum    install     docker-ce      docker-ce-cli       containerd.io      --allowerasing

       //  따로따로 설치하지 말고, 3개 동시에 설치 진행하기. 

      //  --allowerasing 은 충돌하는 패키지를 변경하는 명령어

      //  rhel8.4에서 테스트했는데, (podman, buildah) 관련해서 충돌나는게 많다.            
              

     

     

    3. docker 서비스 동작 확인           

    $ which    docker            

     

    $ ls   -lh    /usr/lib/systemd/system   |   grep   docker
     // 해당 경로에 docker 패키지가 있어야 systemctl 로 docker 를 동작할 수 있음        

     

     

    $ systemctl     status     docker               
    $ systemctl     start       docker             
    $ systemctl     enable    docker                     


    $ docker    version          
      // server 와 client 섹션으로 나뉘어져 있음              
      // server 와 client 버전이 동일한지 확인          


    $ docker     info

     

    $ docker     login    -u    <docker ID> 

            Password :  <docker PW>


    $ docker      pull      httpd     

     // hub.docker.com 에 있는 httpd:lastest 이미지 다운로드


     


    4. 컨테이너 생성하기

    $ docker      pull       nginx     

    $ docker      run      -d      --name       {web_test}          nginx:lastest    

    $ docker      exec     -it        {web_test}         uname  -a     

     

    $ docker      exec     -it        {web_test}         bash     // web_test 컨테이너 접속


    $ docker      run      -d      --name       {web_test}        -p        8888:80        nginx 

     

    $ docker      run      -d      --name       {web_test}        -v    /etc/yum.repos.d:/etc/yum.repos.d        nginx 



    $ curl       127.0.0.1:8888         (host에 httpd 서비스가 없어도 됌) 

     


    $ ps    -ef    |     grep    80  
     // docker-proxy  -container-port 80 프로세스 구동중임.
     // nginx 가 80 port 사용함.

     

     

    4-1. 컨테이너 삭제하기

    $ docker      stop             {web_test}

    $ docker      remove        {web_test}

     

     


    5. 컨테이너 명령어  
      

    $ docker      run      -d      --name       {web_test}       --hostname=rhel84        nginx   
     

    $ docker      container       inspect       {web_test}      

    $ docker      container       inspect       {web_test}    |   grep   {IPAddress}     
    $ docker      container       inspect       {web_test}    |   grep   {Gateway}         
          
       >  ping  {172.17.0.1}     // docker Gateway


     


    6. docker 이미지 개인저장소에 업로드 (hub.docker)

    -- docker images 생성하기

    $ docker      tag        nginx:latest              podmanrun/test-nginx : 1.0

                                         (기존 images)            (docker계정명)  / (생성하는 image명) : Tag

     



    $ docker     login 

    $ docker     info     |    grep     Username


     


    -- hub.docker 에 업로드

    $ docker       push       podmanrun/test-nginx:1.0 

     

     

    'Docker & Kubernetes' 카테고리의 다른 글

    (ubuntu) Docker 환경 설정  (0) 2024.05.13
Designed by Tistory.