동기의 이것저것
article thumbnail
728x90

SSH로 접속 후 yum 업데이트를 해준다.

<bash />
yum install epel-release -y yum update -y

 

1. Docker 설치

<bash />
yum install -y yum-utils yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo # Install Docker Engine yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin # 도커 시작 systemctl start docker # 도커 활성화 systemctl enable docker

 

2. DB 설치 (MariaDB)

<bash />
docker run \ --name mariadb_1 \ -d \ --restart unless-stopped \ -e MARIADB_ROOT_PASSWORD="비밀번호" \ -e TZ=Asia/Seoul \ -p 3306:3306 \ -v /"파일 위치"/conf.d:/etc/mysql/conf.d \ -v /"파일 위치"/mysql:/var/lib/mysql \ -v /"파일 위치"/run/mysqld:/run/mysqld/ \ mariadb:latest # 보안 설정 docker exec -it mariadb_1 /usr/bin/mariadb-secure-installation # 안으로 접속 docker exec -it mariadb_1 mysql -u root -p # 계정으로 어디에서든 접속 가능하도록 GRANT ALL PRIVILEGES ON *.* TO "계정"@'%' IDENTIFIED BY '비밀번호'; # MariaDB 컨테이너에서만 접속 가능하도록 GRANT ALL PRIVILEGES ON *.* TO "계정"@127.0.0.1 IDENTIFIED BY '비밀번호'; # 같은 도커 호스트를 공유하는 컨테이너에서 접속 가능하도록 GRANT ALL PRIVILEGES ON *.* TO "계정"@'172.17.%.%' IDENTIFIED BY '비밀번호'; # Nginx Proxy Manager 위해 생성 CREATE DATABASE nginx; # 내가 프로젝트에서 쓸 DB 생성 CREATE DATABASE "내프로젝트DB이름";

 

3. Git 설치

<bash />
yum install git -y

 

4. Java 17 설치

<bash />
yum -y install wget curl cd /tmp rm -rf /opt/jdk-17 # 설치 wget https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz tar -xvf openjdk-17.0.2_linux-x64_bin.tar.gz mv jdk-17.0.2/ /opt/jdk-17/ vi ~/.bashrc

.bashrc 에서 추가

<bash />
export JAVA_HOME=/opt/jdk-17 export PATH=$JAVA_HOME/bin:$PATH

추가 후 시스템에 반영

<bash />
# 시스템 반영 source ~/.bashrc # 설치 확인 java-version

 

5. Git clone

<bash />
mkdir -p "내 파일 들어갈 곳" git clone "내 git 레포지토리 주소" .

gitignore 로 비밀 정보 있을 경우 복구해주기!

 

 

6. Gradle 빌드

<bash />
chmod 744 gradlew ./gradlew clean build #실행 해보기 java -jar -Dspring.profiles.active=prod build/libs/gramgram-0.0.1-SNAPSHOT.jar # 잘 접속되는지 확인 wget -qO- http://localhost:8080

 

Dockerfile은 이미 git에 같이 넣어두었다.

<bash />
FROM openjdk:17 ARG JAR_FILE=build/libs/"내 파일 이름".jar COPY ${JAR_FILE} app.jar EXPOSE 8080 ENTRYPOINT ["java","-jar","-Dspring.profiles.active=prod","/app.jar"]

 

7. Docker 이미지 생성, 실행

<bash />
#혹시나 있으면 삭제 docker rm -f "이름" docker rmi -f "이미지이름" # 이미지 생성 docker build -t gram . # 이미지 실행 docker run \ --name="이름" \ --restart unless-stopped \ -p 80:8080 \ -e TZ=Asia/Seoul \ -d \ "이미지 이름"

 

8. 접속

http:// "내 공인IP"  이렇게 접속하여 확인해본다.

 

(이렇게 접속하면 서버의 CentOS 80포트로 들어와 내 프로젝트의 8080포트로 연결된다.)

728x90
반응형
profile

동기의 이것저것

@U_motivation

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!