Notice
Recent Posts
Recent Comments
Link
개발 무지렁이
[Docker] 도커라이즈(스프링부트 앱 실행파일 + 자바) 및 운영서버에서 실행 본문

스프링부트 프로젝트 생성 🌱
[HomeController.java]
@Controller
public class HomeController {
@RequestMapping("/")
@ResponseBody
public String showMain() {
return "<h1>Hello, SB</h1>";
}
}
[application.yml]
spring:
profiles:
active: dev
(개발용 ⌨️) [application-dev.yml]
server:
port: 8020
(배포용 🎲) [application-prod.yml]
스프링부트 프로젝트 in GitHub Repository, 운영서버에서 git pull

💻. in 운영서버(CentOS)
sudo yum install git -y 🐱
sudo yum install java-17-openjdk -y ☕
sudo yum install java-17-openjdk-devel -y ☕
sudo yum install git -y 🐱
sudo yum install java-17-openjdk -y ☕
sudo yum install java-17-openjdk-devel -y ☕
[/docker_projects/sbhello_1/project in CentOS(운영서버)]
git clone [GitHub Repository 주소] .
⭐. ls -alh
🪛. gradlew를 소유자가 실행가능한 상태로 권한 변경
: 644 -> chmod 744 gradlew
❓. gradlew(gradle wrapper)란
: 새로운 환경에서 프로젝트를 설정할 때, gradle을 설치하지 않고,
바로 빌드할 수 있게 해주는 역할을 한다.
❓. 빌드(build)란
: 실행파일을 만드는 과정
⭐. ls -alh
🐘. gradlew 실행
./gradlew clean build # build 폴더 생김
cd build/libs/
app20230706-0.0.1-SNAPSHOT.jar
📀.jar (실행파일 + 톰캣🐱)
🌱.Spring Boot 실행 in 운영server(CentOS)
cd /docker_projects/sbhello_1/project
java -jar -Dspring.profile.active=prod build/libs/app20230706-0.0.1-SNAPSHOT.jar
# 개발용 http://192.168.56.103:8020/
# 배포용 http://192.168.56.103:8080/
🪛. 옵션
-Dspring.profile.active=prod: 배포용으로 활성화
-Dspring.profile.active=prod: 배포용으로 활성화
🐋. 도커라이즈(도커 이미지화)
✏️. vim Dockerfile
ROM openjdk:17-jdk-alpine
ARG JAR_FILE=build/libs/app20220916-0.0.1-SNAPSHOT.jar
COPY ${JAR_FILE} app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","-Dspring.profiles.active=prod","/app.jar"]
🐋. docker build -t sbhello .🐋. docker run -d -p 8080:8080 --name=sbhello sbhello
'Backend > Docker' 카테고리의 다른 글
[Docker] 도커허브(DockerHub)에서 공식 베이스 이미지를 가져와 자체 이미지 구축(in Dockerfile) (0) | 2023.11.04 |
---|---|
[Docker] 도커라이즈(스프링부트 앱 실행파일 + 자바 + DB) 및 로컬PC환경, 운영서버 환경에서 DB연결정보 설정하기 (1) | 2023.07.11 |
[Docker] 범용 이미지를 개조하여 my 이미지 제작 (0) | 2023.07.04 |
[Docker] Volume(볼륨), host os 폴더와 docker container 폴더의 매핑 (0) | 2023.07.03 |
[Docker] 컨테이너 내부 진입, index.html 파일 수정 (0) | 2023.07.03 |
Comments