Skip to content
Snippets Groups Projects
Commit 137383e6 authored by 장무현's avatar 장무현
Browse files

4

parent ee7bcf51
No related branches found
No related tags found
No related merge requests found
# GitLab Runner가 사용할 Docker 이미지 (Maven + JDK 포함)
image: maven:3.9-eclipse-temurin-17
services:
- docker:dind # Docker-in-Docker 서비스 사용
variables:
DOCKER_DRIVER: overlay2
MAVEN_CLI_OPTS: "-B -Dmaven.test.skip=true"
stages: stages:
- build - build
- dockerize - deploy
# Step 1: Maven 빌드 cache:
paths:
- .m2/repository
- target/
# 1️⃣ 빌드 단계: Maven + JDK 17 이미지 사용
build: build:
image: maven:3.9.6-eclipse-temurin-17
stage: build stage: build
script: script:
- echo "✅ Maven 빌드 시작" - mvn clean package -DskipTests
- mvn $MAVEN_CLI_OPTS clean package
artifacts: artifacts:
paths: paths:
- target/*.jar - target/*.jar
- Dockerfile
only:
- main
# Step 2: Docker 이미지 빌드 + Docker Hub 푸시 # 2️⃣ 배포 단계: Docker로 이미지 빌드 & DockerHub에 푸시
dockerize: deploy:
stage: dockerize
image: docker:latest image: docker:latest
services: services:
- docker:dind - docker:dind
stage: deploy
when: manual
variables:
DOCKER_HOST: tcp://docker:2375
DOCKER_TLS_CERTDIR: ""
before_script: before_script:
- echo "🔐 Docker Hub 로그인" - echo "$DOCKER_HUB_PASSWORD" | docker login -u "$DOCKER_HUB_USERID" --password-stdin
- docker login -u "$DOCKER_HUB_USERID" -p "$DOCKER_HUB_PASSWORD"
script: script:
- echo "🐳 Docker 이미지 빌드 시작" - docker build -t myspringweb .
- docker build -t $DOCKER_HUB_USERID/myspringweb . - docker tag myspringweb "$DOCKER_HUB_USERID/myspringweb"
- docker push $DOCKER_HUB_USERID/myspringweb - docker push "$DOCKER_HUB_USERID/myspringweb"
after_script: after_script:
- docker logout - docker logout
only: only:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment