Ubuntu
sudo apt update, sudo apt upgrade 먼저 하고 아래 내용 진행
# 1. OpenJDK 17 풀 버전 설치
sudo apt update
sudo apt install -y openjdk-17-jdk
# 2. 설치 경로 확인
ls /usr/lib/jvm/
# 보통은 /usr/lib/jvm/java-17-openjdk-amd64 로 설치됨
# 3. 환경 변수 설정
sudo vi /etc/profile
#/etc/profile 맨 아래에 추가:
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/lib
# 4. 변경 적용
source /etc/profile
# 5. 확인
echo $JAVA_HOME
java -version
javac -version
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
source ~/.bashrc
nvm install 22.14.0
node -v
특정 버전을 사용하기
nvm use <version>
위 과정에서 계속 time spent 만 변화하고, 설치가 되지 않는다면, 외부 443포트로 아웃바운드 요청이 안되고 있는것일 수있으므로 아래 내용을 확인하고 패킷로스가 100% 라면 인프라에 외부인테넷에 접근이 안된다고 열어달라고 요청
curl -I https://www.google.com
sudo apt install nginx
아래 내용 에러시, 클라우드 서버, VPS, 가상머신에서 종종 나오는 현상으로, IPv6가 문제임.
/etc/nginx/sites-available/default 파일에서 아래 내용(v6) 주석처리
listen [::]:80 default_server;
nginx: [emerg] socket() [::]:80 failed (97: Unknown error)
nginx: configuration file /etc/nginx/nginx.conf test failed
정상 설치 확인
sudo systemctl status nginx
/etc/nginx/sites-available 폴더에 설정파일(도메인명과 같게 파일명 설정) 아래와 같이 생성
server {
listen 80;
server_name 퍼블릭 IP나 도메인 적어주십쇼;
# Vue.js 정적 파일 서빙 설정
root /var/www/classhub/dist;
index index.html;
location / {
try_files $uri $uri/ /index.html;
}
# API 요청을 스프링 부트 서버로 프록시 설정
location /api/ {
proxy_pass http://127.0.0.1:8087;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-NginX-Proxy true;
}
# 웹소켓 프록시 설정
location /whiteboard {
proxy_pass http://127.0.0.1:8087; # 웹소켓 서버가 스프링 부트 애플리케이션과 동일한 포트에서 실행 중이어야 합니다.
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
/etc/nginx/sites-available 내의 default 파일 전부 주석처리
symlink 생성 및 Nginx 설정 테스트, 재가동
sudo ln -s /etc/nginx/sites-available/어쩌구.conf /etc/nginx/sites-enabled/어쩌구.conf
sudo nginx -t
sudo systemctl restart nginx
/apps 폴더 생성
-> 내부에 deploy.sh 생성
-> sudo chmod -R 777 apps/
/var/www/ats 폴더 생성-> sudo chmod -R 777 ats/
FFmpeg is the leading multimedia framework
sudo apt install ffmpeg
ffmpeg -version
ffprobe -version
which ffmpeg
which ffprobe
일반적으로 아래 위치 중 하나:
/usr/bin/ffmpeg
/usr/bin/ffprobe