사용 고정 표시기 배포 springBoot 및 YML 프로파일은 항아리에 포장되지 않은

1. 포장 springBoot 프로젝트 접사의 치어 프로젝트는 다음과 같은 패키지 구성 demo.jar입니다 (받는다는 도우미의 아이디어를 사용하여 플러그인을 패키지)

<XML 버전 =? " 1.0 " 인코딩 = " UTF-8 " ?> 
<프로젝트의 xmlns = " http://maven.apache.org/POM/4.0.0 " 에 xmlns :이 xsi = " HTTP : //www.w3 .ORG / 2001 / 된 XMLSchema 인스턴스 " 
         는 xsi :의 schemaLocation = " http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd " > 
    <modelVersion> 4.0 . 0 </ modelVersion> 
    <부모> 
        <의 groupId> org.springframework.boot </의 groupId> 
        <artifactId를>2.1 . 9 .RELEASE </ 버전> 
        <relativepath를 /> <! - 룩업 부모 로부터 저장소 -> 
    </ 부모> 
    <의 groupId> com.docker </의 groupId> 
    <artifactId를> 데모 </ artifactId를> 
    <version>은 0.0 . 1 -snapshot </ 버전> 
    <이름> 데모 </ 이름> 
    <설명> 데모 프로젝트 를위한 봄 부트 </ 설명> 

    <속성> 
        <java.version> 1.8 </java.version> 
    </ 속성> 

    <종속성> 
        < 의존성> 
            <
            <artifactId를> 스프링 부팅 스타터 데이터 JPA </ artifactId를> 
            <의 groupId> org.springframework.boot </의 groupId>
        <의존성> 
            <의 groupId> org.springframework.boot </의 groupId> 
            <artifactId를> 스프링 부팅 스타터 JDBC </ artifactId를> 
        </ 의존성> 
        <의존성> 
            <의 groupId> org.springframework.boot </의 groupId> 
            <artifactId를 > 스프링 부팅 스타터 웹 </ artifactId를> 
        </ 의존성> 
        <의존성> 
            <의 groupId> MySQL의 </의 groupId> 
            <artifactId를> MySQL을 커넥터 자바 </ artifactId를> 
            <분야> 런타임 </ 범위> 
        </ 종속 > 

        <의존성> 
            <artifactId를>스프링 부팅 DevTools로 </ artifactId를> 
            <범위> 실행 </ 범위> 
            <선택>사실 </ 옵션> 
        </ 의존성> 
        <의존성> 
            <의 groupId> org.projectlombok </의 groupId> 
            <artifactId를> 롬복 </ artifactId를> 
            <선택> 진정한 </ 옵션> 
        </ 의존성> 
        <의존성> 
            <의 groupId> 조직. springframework.boot </의 groupId> 
            <artifactId를> 스프링 부팅 스타터 테스트 </ artifactId를> 
            <분야> 시험 </ 범위> 
        </ 의존성> 
    </ 의존성> 

    <빌드> 
        <플러그인>  
            <플러그인>
                <의 groupId> org.springframework. 부팅 </의 groupId> 
                <artifactId를> 스프링 부팅 받는다는 - 플러그인 </ artifactId를>
            </ 플러그인> 
            <! - Maven 설치时跳过单元测试-> 
            <플러그인> 
                <의 groupId> org.apache.maven.plugins </의 groupId> 
                <artifactId를> 받는다는 - 확실한 - 플러그인 </ artifactId를> 
                <구성> 
                    <skipTests> 진정한 </ skipTests> 
                </ 설정> 
            </ 플러그인> 
        </ 플러그인> 
        <리소스> 
            <자원> 
                <필터> 진정한 </ 필터링> 
                <디렉토리> SRC / 메인 / 자원 </ 디렉토리> 디렉토리> SRC / 메인 / 자원 </ 디렉토리> 
                <제외>
                    <제외> ** / * .yml </ 제외>
                </ 제외> 
            </ 자원> 
        </ 자원> 
    </ 빌드> 


</ 프로젝트>

2. 다음 디렉토리 구조에 서버에 전체 패키지 항아리 패키지 및 구성 파일을 복사

설정 -> application.yml

LIB -> demo2.jar

dockerfile

 

 dockerfile 만들기 (3)

오픈 JDK FROM : 8 -jdk- 고산 
COPY. / 설정은 / usr / 웹 / 라이브 / 구성 
COPY. / lib 디렉토리는 / usr / 웹 / 라이브 /는 LIB 

에 노출 8080 

엔트리 포인트 [ " 자바 " , " -Djava.security.egd = 파일 : / dev에 /./ urandom을 " , \
 " -jar " , \
 " -Dspring.config.location =는 / usr / 웹 / 라이브 / 설정 / application.yml " , \
 " /usr/web/live/lib/demo2.jar " ]

거울 만들기 명령 4. (사용 sudo는 스와 큰 동작으로 허가를 받아야 기억)

고정 표시기 빌드 -t demo2.

컨테이너 및 실행 만들기 (5)

고정 표시기 실행 --name demo2 -p 8035 : 8080 -d demo2

6. 로그보기

 고정 표시기 로그 -f -t demo2

 

 데모 효과

 

 

추천

출처www.cnblogs.com/guanxiaohe/p/11906092.html