Springboot 프로젝트 이미지를 docker 환경이 없는 windows 시스템의 원격 호스트로 푸시합니다.
Pom.xml 파일에 다음 정보를 추가합니다.
& lt 플러그인 & gt
& lt 플러그인 & gt
& ltgroupid & gtorg.spring framework.boot < /groupid >
& ltartifactid & gtspring-boot-maven-plugin & lt/artifactid >
& lt 구성>
& lt 포크 & gttrue & lt/fork & gt;;
& lt/configuration & gt;;
& lt/plugin & gt;;
& lt 플러그인 & gt
& ltgroupid & gtcom.spotify & lt/groupid >
& ltartifactid & gtdocker-maven-plugin < /아티팩트 id >
& lt 버전>1.0.0 < /version >
& lt 구성>
& ltimagename & gt {project.artifactid}</imagename >
& ltdockerdirectory & gt {project.build.directory} < /directory >
& lt 에는> $ {project.build.finalname} 이 포함되어 있습니다. Jar & lt/include & gt;;
& lt/resource & gt;;
& lt/resources & gt;;
& ltdockerhost & gt http://192.168.12./kloc-0 /dockerhost >
& lt/configuration & gt;;
& lt/plugin & gt;;
& lt/plugins & gt;;
둘째, Dockerfile 파일을 구성합니다.
자바: 8 에서
수비수 이향
부피 /tmp
Echo' 아시아/상하이' & gt/etc/timezone 실행
Mkdir -p /usr/local/app 를 실행합니다
Sscm-eureka-server-1.0.0.jarapp.jar 을 복사합니다
노출 876 1
ENTRYPOINT ["java ","-Djava.security.egd=file:/dev/. /urandom ","-jar ","/app.jar"]
셋째, 원격 호스트 docker 에 대한 원격 액세스를 켭니다
원격 액세스를 설정하려면 다음 구성 파일을 수정해야 합니다.
Vim/usr/lib/systemd/system/docker.service
1, 이 파일 [서비스] 아래에 다음 구성을 추가합니다.
ExecStart=
Execstart =/usr/bin/dockerd-h TCP://0.0.0.0: 2375-h UNIX:///var/run/
추가 후 저장
2. 서비스를 다시 시작합니다
Systemctl 데몬-다시 로드
Systemctl docker 다시 시작
3, 방화벽 액세스 열기
다음 기능은 루트 권한이 있다는 사실을 기준으로 합니다.
설치:
Sudo yum firewalld 방화벽 설치
1
시작, 정지, 비활성화, 활성화
상태를 보려면 다음과 같이 하십시오.
시스템 제어 상태 방화벽 d
1
시작:
시스템 부팅 방화벽 d
1
중지:
시스템 정지 방화벽 d
1
비활성화:
Systemctl 방화벽 d 비활성화
1
활성화:
Systemctl 방화벽 d 활성화
1
열린 포트 간격
Firewall-cmd-permanent-zone = public-add-port =100-500/TCP
Firewall-cmd-permanent-zone = public-add-port =100-500/UDP
방화벽-명령-다시 로드
1
2
셋;삼;3
열린 포트 보기
Firewall-cmd-zone = public-list-port
1
또 어떤 서비스가 개통될 수 있는지 보자.
방화벽-명령-획득-서비스
1
증가
Firewall-cmd-zone = public-add-port = 80/TCP-permanent (-permanent 는 영구적이지만 재부팅 후 유효하지 않음).
1
다시 로드
방화벽-명령-다시 로드
1
시험
방화벽-cmd-zone = public-query-port = 80/TCP
1
삭제
방화벽-cmd-zone = public-remove-port = 80/TCP-permanent
4. maven 을 사용하여 로컬에서 명령을 패키지화합니다.
Mvn clean package docker:build 는 미러를 지정된 호스트로 푸시합니다.
5, 검증
1, 로컬 브라우저를 열고 http:// remote ip:2375 를 입력합니다. 반환: {"message":"page not found"} 는 원격 포트가 성공적으로 열려 있음을 나타냅니다.
2.docker images 는 원격 호스트에 사용됩니다. 대상 이미지가 목록에 나타나면 원격 푸시가 성공한 것입니다.