Docker

[Linux, Docker] git pull / 프로젝트 빌드 / 컨테이너 배포 (Dockerfile 생성), (이미지 실행)

개발에목마른쭌 2023. 5. 11. 18:02

소스코드 다운로드

  • rm -rf /docker_projects/{프로젝트명}/project
  • mkdir -p /docker_projects/{프로젝트명}/project
  • cd /docker_projects/{프로젝트명}/project
  • git clone {레포지토리 주소} .
    • 이 명령어에서 가장 끝 부분에 있는 . 을 빠뜨리면 안됨.
  • git checkout {브랜치명}
  • vim src/main/resources/application-secret.yml
    • 실제 작동하는 키 정보 넣기

gradlew 를 소유자가 실행 가능한 상태로 변경

  • cd /docker_projects/{프로젝트}/project
  • ls -alh | fgrep gradlew
  • chmod 744 gradlew
  • ls -alh | fgrep gradlew

빌드

  • ./gradlew clean build

이미지 생성

  • vim Dockerfile
FROM openjdk:17-jdk-alpine
ARG JAR_FILE=build/libs/{프로젝트명}-0.0.1-SNAPSHOT.jar
COPY ${JAR_FILE} app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","-Dspring.profiles.active=prod","/app.jar"]

 

  • docker build -t {이미지명} . // 맨 마지막 . 꼭 붙여야됨

이미지 실행

docker run \
  --name={아무거나} \
  --restart unless-stopped \
  -p 8080:8080 \
  -e TZ=Asia/Seoul \
  -d \
  {이미지명}