aws EC2인스턴스 생성 -> 보안그룹을 다음과 같이 설정 -> key를 이용한 ssh 접속(인바운드)
스프링 프로젝트 환경에 맞는 jdk, jre 설치
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install openjdk-11-jre
sudo apt-get install openjdk-11-jdk
sudo apt-get install tomcat
readlink해서 얻은 주소를 마지막 줄에 추가
인스턴스 재부팅후 환경변수 확인
3.7.9 바이너리 파일을 서버에서 직접 다운로드
빌드를 위한 파일 추가
sudo apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget
wget https://www.python.org/ftp/python/3.7.9/Python-3.7.9.tgz
wget을 하려면 우분투 서버에서 밖으로 요청을 보내야 하므로 인바운드 규칙에 tcp 청을 허용하도록 편집하고 서버 리부트(오는걸 받아야되서 아웃 바운드 규칙도 해줘야함)
받았으면 압축 풀고 빌드 진행
tar xzf Python-3.7.9.tgz
cd Python-3.7.9
sudo ./configure --enable-optimizations
sudo make altinstall
자바와 똑같이 환경변수 설정
번거로운 과정이므로 다른 방법 사용
파이썬 3.7, venv 설치
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get install python3.7-venv
가상환경 디렉토리 활성화
mkdir han_venv
cd han_venv
python3.7 -m venv han_venv
source han_venv/bin/activate
pip install --upgrade pip
pip install numpy==1.16.6
pip install torch==1.12.0 --no-cache-dir
(생략)
C:\Users\Administrator\Desktop\hanium\gitFiles>git init
C:\Users\Administrator\Desktop\hanium\gitFiles>git remote add origin https://lab.hanium.or.kr
C:\Users\Administrator\Desktop\hanium\gitFiles>git clone https://lab.hanium.or.kr
C:\Users\Administrator\Desktop\hanium\gitFiles>cd 22_hf252
git 로컬 폴더에 라이브러리 추가
원격 폴더 업데이트
C:\Users\Administrator\Desktop\hanium\gitFiles\22_hf252>git add .
C:\Users\Administrator\Desktop\hanium\gitFiles\22_hf252>git commit -m "ML_lib"
C:\Users\Administrator\Desktop\hanium\gitFiles\22_hf252>git push -u origin master
파이썬 모델 올리는 중 100mb 이상을 git으로 업로드 하는 방법
https://medium.com/@stargt/github%EC%97%90-100mb-%EC%9D%B4%EC%83%81%EC%9D%98-%ED%8C%8C%EC%9D%BC%EC%9D%84-%EC%98%AC%EB%A6%AC%EB%8A%94-%EB%B0%A9%EB%B2%95-9d9e6e3b94ef
ubuntu@ip-172-31-35-32:~/gitFiles$ git remote add -f origin https://lab.hanium.or.kr/22_HF252/22_hf252.git
git config core.sparseCheckout true (git 원격 폴더에 특정 파일만 타겟할 수 있게해줌)
echo "AI/lib/" >> .git/info/sparse-checkout
git pull origin master
gradle탭에서 bootJar
Task :bootJarMainClassName FAILED <- 에러가 뜬다면
build.gradle에 메인클래스 지정
bootJar { mainClass = 'testServer_han.demo.TestServerHanApplication' }
생성된 jar파일
로컬 repository에 jar 파일 추가
git에 push
git에 올린거 pull
8080포트에 tcp 접속 허용
java -jar [jar파일명] 으로 서버 실행
sudo apt-get install net-tools 후
(pid로 죽이기)
우분투에서 파이썬, 자바 각 실행했을 때 경로가 달라질 수 있으니 계속 확인하면서 프로젝트 파일을 적절한 경로에 배치하고 소스코드를 수정해야 한다