[GHOST] 우분투 Arm 서버에 Ghost 설치하기
오늘은 Arm 기반 서버에 Ghost 설치 방법에 대해 알아보겠습니다. ubuntu 22.04.3 arm 기반 버전으로 작성하였습니다. 설치가 매우 간단하나, 어느정도의 도메인지식은 필요하다고 생각합니다. 도메인과 해당 서버 ip에 DNS 설정 이후 설치를 진행합니다.
해당 서버에 쉘에 접속합니다.
adduser ghost
고스트는 인스톨시 고스트 전용 유저를 생성하길 권장합니다.
저의 경우 adduser ghost 명령어를 사용하여 ghost란 유저를 생성하였습니다.
adduser <user> <- 원하시는 계정명으로 생성하시면 됩니다. 이후 계정은 ghost로 통일 하겠습니다.
usermod -aG sudo ghost
su ghost
usermod 명령어를 사용하여 생성한 ghost 유저에게 sudo 그룹에 추가합니다. 이후 su 명령어를 사용하여 ghost 계정으로 접속합니다.
sudo apt-get update
sudo apt-get upgrade
이 두 명령어를 함께 사용하면 시스템의 패키지를 최신 상태로 유지할 수 있습니다.
sudo apt-get install nginx
nginx 설치 후 방화벽 해제가 필요합니다.
ufw를 사용한다면
sudo ufw allow 'Nginx Full'
저의 경우 오라클 클라우드 사용하고 있어 ufw를 사용하지 않고 iptables를 사용합니다. 아래 명령어로 80port와 443port를 오픈해주세요.
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
curl http://localhost
도메인 연결 전이라 실제 ip로 접속해보시거나 , curl 명령어로 html 파일이 표시되는지 확인합니다.
sudo apt-get install mysql-server
sudo mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH 'mysql_native_password' BY '패스워드';
FLUSH PRIVILEGES;
exit
mariadb는 추후 호환되지 않을 수 있으니 mysql 설치를 권장 합니다. mysql 설치후 루트 패스워드 설정해주세요.
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
NODE_MAJOR=18 # Use a supported version
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
sudo apt-get update
sudo apt-get install nodejs -y
이어서 nodejs 설치를 진행합니다.
sudo npm install ghost-cli@latest -g
이어서 전역으로 ghost-cli를 설치해주세요.
sudo mkdir -p /var/www/blog
sudo chown ghost:ghost /var/www/blog
sudo chmod 775 /var/www/blog
cd /var/www/blog
ghost가 설치될 디렉토리를 생성하고, 해당 디렉터리에 권한을 부여합니다.
이후 해당 디렉토리로 이동하여 아래 명령어를 입력합니다.
ghost install
arm 버전은 위의 명령어로 인스톨시 오류가 발생합니다.
sudo apt install build-essential
이후 다시 ghost install 명령어를 사용하여 다시 install를 진행하시면 됩니다.