본문 바로가기
카테고리 없음

EC2 관리

by 수수남매 2023. 11. 16.

Ubuntu 기준 CLI 명령어들을 시나브로 정리해보자.


  1. 접속 : ssh -i {YOUR_KEY_PAIR_FILE.pem} {USER_NAME}@{AWS_PUBLIC_DNS_}
    하지만 보통 .ssh/config에 Host 이름을 만들어서 접속
Host {call name} 
    HostName {ec2 IP address or domain} 
    User ubuntu 
    IdentityFile ~/.ssh/{key file name}.pem    # Mac 기준

 

  1. Port forwarding
# forwarding command 
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 

# list view command 
sudo iptables -t nat -L --line-numbers

 

3. Spring application 실행/종료

# deploy 
nohup java -jar {jar file name} & 

# process id check 
ps # in detail: ps -ef | grep java 

# process kill 
kill -15 {pid} # forced kill: -9

 

4. EC2 신규 생성 후 SSH Key 재사용시

   - .ssh 폴더 안의 known_hosts 파일을 지우면 됨

 

5. JAVA & Docker 설치

# java (corretto 17)
wget -O - https://apt.corretto.aws/corretto.key | sudo gpg --dearmor -o /usr/share/keyrings/corretto-keyring.gpg && \
echo "deb [signed-by=/usr/share/keyrings/corretto-keyring.gpg] https://apt.corretto.aws stable main" | sudo tee /etc/apt/sources.list.d/corretto.list
sudo apt-get update; sudo apt-get install -y java-17-amazon-corretto-jdk

# docker
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
# 실행상태 확인
sudo systemctl status docker

# docker-compose
sudo curl -L https://github.com/docker/compose/releases/download/v2.23.3/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

# 권한 추가
sudo usermod -a -G docker $USER

 

6. swap file (source: https://repost.aws/knowledge-center/ec2-memory-swap-file)

# 2GB 설정 시
$ sudo dd if=/dev/zero of=/swapfile bs=128M count=16
$ sudo chmod 600 /swapfile
$ sudo mkswap /swapfile
$ sudo swapon /swapfile
$ sudo swapon -s
$ sudo vi /etc/fstab
/swapfile swap swap defaults 0 0