Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • 플러그인만 등록해주면 사용가능. 아무 세팅 하지 않으면 생성되는 이미지의 이름은 module 이름과 version 태그로 빌드 됨.

    Code Block
    languagegroovy
    titlebuild.gradle
    collapsetrue
    plugins {
        ...
        id 'com.google.cloud.tools.jib' version '12.63.0'
    }


Jib 기본 사용 예제


  • Docker 없이 registry에 이미지 저장 ( 아이디와 비번 노출을 방지하기 위해 https://github.com/docker/docker-credential-helpers 참고할 것 )

    Code Block
    ./gradlew jib
  • Docker deamon를 이용하여 로컬에 이미지 저장 ( 우리는 편하고 통일성 있는 local 개발을 위해 jibDockerBuild를 사용 )

    Code Block
    ./gradlew jibDockerBuild


Jib 고급 사용 예제


  • Configuration

    Code Block
    languagegroovy
    titlebuild.gradle
    collapsetrue
    jib {
        from {
            image = "docker://'openjdk:8-jre-alpine"'
    // 로컬환경에 설치되어}
    있는 도커데몬에서 Baseto Image{
     가져온다. (지금 상황에서는 굳이image 원격에서 가져올 필요가 없으므로...)
        }
        to {
            image = "gaemi/jib-example-case3"
            tags = ["${project.version}".toString(), "${BUILD_VERSION}".toString()]
            credHelper = "pass"
        }
        container {
            mainClass = "gaemi.jib.excample.JibExampleApplication"
            ports = ["8080"]
            volumes = ["/tmp"]
        }
    }
    

`

  • = 'localhost:5000/my-image/built-with-jib'
        credHelper = 'osxkeychain'
        tags = ['tag2', 'latest']
      }
      container {
        jvmFlags = ['-Xms512m', '-Xdebug', '-Xmy:flag=jib-rules']
        mainClass = 'mypackage.MyApp'
        args = ['some', 'args']
        ports = ['1000', '2000-2003/udp']
        labels = [key1:'value1', key2:'value2']
        format = 'OCI'
      }
    }
    
  • Run `jib` with each build

    Code Block
    languagegroovy
    titlebuild.gradle
    tasks.build.dependsOn tasks.jib
    

함께 보기

Children Display