헤드리스 CMS+SSG를 도입할 때 노드 서버 구축
목적:
담당 기사 사이트 개수로 SSG/헤드리스 CMS 도입
문제:
・Vercel의 이용을 생각했습니다만, 도메인 변경이 필요.
・SSG/헤드리스 CMS를 도입하고 싶지만, 도메인 변경하고 싶지 않다고 하는 디렉터의 요망.
검토
· 일단 기존 서버에 Node 서버를 구축하고 여러 가지 시도
nodenv란?
· 노드 버전을 관리하는 명령
・플러그인(nodenv-build)을 넣는 것으로, node의 인스톨이 가능
nodenv 다운로드
GitHub에서 nodenv 소스를 clone
git clone https://github.com/nodenv/nodenv.git ~/.nodenv
nodenv 빌드
nodenv를 빌드하여 실행 가능한 상태로 만듭니다.
cd ~/.nodenv && src/configure && make -C src
path를 통과
echo 'export PATH="$HOME/.nodenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(nodenv init -)"' >> ~/.bash_profile
path를 통해 명령을 두드리기
쉘 재시작
exec $SHELL -l
로그인 쉘을 다시 시작하여 새 구성 파일을 읽을 수 있습니다.
nodenv 버전 확인
nodenv --version
플러그인 설치
플러그인용 디렉토리 작성
mkdir -p "$(nodenv root)"/plugins
플러그인 설치(clone)
git clone https://github.com/nodenv/node-build.git "$(nodenv root)"/plugins/node-build
nodenv 업데이트용 플러그인 설치(clone)
git clone https://github.com/nodenv/nodenv-update.git "$(nodenv root)"/plugins/nodenv-update
nodenv update와 명령을 두드려 nodenv와 그 플러그인을 자동으로 업데이트 가능
노드 설치
설치 가능한 노드 버전 확인
nodenv install --list
노드 설치 (14.15.1은 현재 LTS 버전)
nodenv install 14.15.1
rehash 실행
nodenv rehash
· nodenv에서 node와 글로벌 npm 패키지를 볼 수 있도록
· 새로운 노드 버전을 넣거나 npm install -g 등을 실행할 때 실행해야합니다.
노드 버전 확인
nodenv versions
* 14.15.1 (set by /home/ec2-user/***_deploy/blog/.node-version)
노드 버전 지정
프로젝트에서 사용할 노드의 버전 지정
프로젝트 디렉토리에서만 사용할 노드 버전 지정
cd /home/ec2-user/xxx_deploy/blog
nodenv local 14.15.1
프로젝트의 디렉토리 (/home/ec2-user/xxx_deploy/xxx_blog)에 .node-version이라는 이름의 보이지 않는 파일이 생성되며 그 안에 해당 디렉토리에서 사용하는 node의 버전이 설명됩니다.
덧붙여서 글로벌로 사용할 경우의 node 버전 지정
nodenv global 14.15.1
글로벌과 로컬 모두 지정했을 경우, 로컬로 지정하는 것이 우선다.
build
npm ci(少し時間かかる)
npm run build
Compiled successfully, Export successful 메세지로 build가 완료해, 프로젝트의 디렉토리에 out(디폴트)라고 하는 폴더가 생겨 여러가지 토출된다.
out 폴더내의 기사의 html 파일을 열면 문제 없게 기사가 표시되었으므로 build가 정상적으로 행해졌다고 판단.
기타 node 명령
node 제거
nodenv uninstall 14.15.1
nodenv 업데이트
nodenv update
nodenv 제거
~/.nodenv의 디렉토리를 지우는 것만
rm -rf $(nodenv root)
서버에서 직접 커멘드 실행으로 build가 정상적으로 행해졌으므로 다음은 GitHubActtion에서 push시에 자동으로 git로부터 최신 소스를 pull 후에 node 서버로 build 하는 구조를 아래와 같이 구현.
htps : // 코 m / 케이 ry / ms / 5568232516b8 예 323d4b
Reference
이 문제에 관하여(헤드리스 CMS+SSG를 도입할 때 노드 서버 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kerry/items/7a414f6fa2ca793c407e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
・Vercel의 이용을 생각했습니다만, 도메인 변경이 필요.
・SSG/헤드리스 CMS를 도입하고 싶지만, 도메인 변경하고 싶지 않다고 하는 디렉터의 요망.
검토
· 일단 기존 서버에 Node 서버를 구축하고 여러 가지 시도
nodenv란?
· 노드 버전을 관리하는 명령
・플러그인(nodenv-build)을 넣는 것으로, node의 인스톨이 가능
nodenv 다운로드
GitHub에서 nodenv 소스를 clone
git clone https://github.com/nodenv/nodenv.git ~/.nodenv
nodenv 빌드
nodenv를 빌드하여 실행 가능한 상태로 만듭니다.
cd ~/.nodenv && src/configure && make -C src
path를 통과
echo 'export PATH="$HOME/.nodenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(nodenv init -)"' >> ~/.bash_profile
path를 통해 명령을 두드리기
쉘 재시작
exec $SHELL -l
로그인 쉘을 다시 시작하여 새 구성 파일을 읽을 수 있습니다.
nodenv 버전 확인
nodenv --version
플러그인 설치
플러그인용 디렉토리 작성
mkdir -p "$(nodenv root)"/plugins
플러그인 설치(clone)
git clone https://github.com/nodenv/node-build.git "$(nodenv root)"/plugins/node-build
nodenv 업데이트용 플러그인 설치(clone)
git clone https://github.com/nodenv/nodenv-update.git "$(nodenv root)"/plugins/nodenv-update
nodenv update와 명령을 두드려 nodenv와 그 플러그인을 자동으로 업데이트 가능
노드 설치
설치 가능한 노드 버전 확인
nodenv install --list
노드 설치 (14.15.1은 현재 LTS 버전)
nodenv install 14.15.1
rehash 실행
nodenv rehash
· nodenv에서 node와 글로벌 npm 패키지를 볼 수 있도록
· 새로운 노드 버전을 넣거나 npm install -g 등을 실행할 때 실행해야합니다.
노드 버전 확인
nodenv versions
* 14.15.1 (set by /home/ec2-user/***_deploy/blog/.node-version)
노드 버전 지정
프로젝트에서 사용할 노드의 버전 지정
프로젝트 디렉토리에서만 사용할 노드 버전 지정
cd /home/ec2-user/xxx_deploy/blog
nodenv local 14.15.1
프로젝트의 디렉토리 (/home/ec2-user/xxx_deploy/xxx_blog)에 .node-version이라는 이름의 보이지 않는 파일이 생성되며 그 안에 해당 디렉토리에서 사용하는 node의 버전이 설명됩니다.
덧붙여서 글로벌로 사용할 경우의 node 버전 지정
nodenv global 14.15.1
글로벌과 로컬 모두 지정했을 경우, 로컬로 지정하는 것이 우선다.
build
npm ci(少し時間かかる)
npm run build
Compiled successfully, Export successful 메세지로 build가 완료해, 프로젝트의 디렉토리에 out(디폴트)라고 하는 폴더가 생겨 여러가지 토출된다.
out 폴더내의 기사의 html 파일을 열면 문제 없게 기사가 표시되었으므로 build가 정상적으로 행해졌다고 판단.
기타 node 명령
node 제거
nodenv uninstall 14.15.1
nodenv 업데이트
nodenv update
nodenv 제거
~/.nodenv의 디렉토리를 지우는 것만
rm -rf $(nodenv root)
서버에서 직접 커멘드 실행으로 build가 정상적으로 행해졌으므로 다음은 GitHubActtion에서 push시에 자동으로 git로부터 최신 소스를 pull 후에 node 서버로 build 하는 구조를 아래와 같이 구현.
htps : // 코 m / 케이 ry / ms / 5568232516b8 예 323d4b
Reference
이 문제에 관하여(헤드리스 CMS+SSG를 도입할 때 노드 서버 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kerry/items/7a414f6fa2ca793c407e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
· 노드 버전을 관리하는 명령
・플러그인(nodenv-build)을 넣는 것으로, node의 인스톨이 가능
nodenv 다운로드
GitHub에서 nodenv 소스를 clone
git clone https://github.com/nodenv/nodenv.git ~/.nodenv
nodenv 빌드
nodenv를 빌드하여 실행 가능한 상태로 만듭니다.
cd ~/.nodenv && src/configure && make -C src
path를 통과
echo 'export PATH="$HOME/.nodenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(nodenv init -)"' >> ~/.bash_profile
path를 통해 명령을 두드리기
쉘 재시작
exec $SHELL -l
로그인 쉘을 다시 시작하여 새 구성 파일을 읽을 수 있습니다.
nodenv 버전 확인
nodenv --version
플러그인 설치
플러그인용 디렉토리 작성
mkdir -p "$(nodenv root)"/plugins
플러그인 설치(clone)
git clone https://github.com/nodenv/node-build.git "$(nodenv root)"/plugins/node-build
nodenv 업데이트용 플러그인 설치(clone)
git clone https://github.com/nodenv/nodenv-update.git "$(nodenv root)"/plugins/nodenv-update
nodenv update와 명령을 두드려 nodenv와 그 플러그인을 자동으로 업데이트 가능
노드 설치
설치 가능한 노드 버전 확인
nodenv install --list
노드 설치 (14.15.1은 현재 LTS 버전)
nodenv install 14.15.1
rehash 실행
nodenv rehash
· nodenv에서 node와 글로벌 npm 패키지를 볼 수 있도록
· 새로운 노드 버전을 넣거나 npm install -g 등을 실행할 때 실행해야합니다.
노드 버전 확인
nodenv versions
* 14.15.1 (set by /home/ec2-user/***_deploy/blog/.node-version)
노드 버전 지정
프로젝트에서 사용할 노드의 버전 지정
프로젝트 디렉토리에서만 사용할 노드 버전 지정
cd /home/ec2-user/xxx_deploy/blog
nodenv local 14.15.1
프로젝트의 디렉토리 (/home/ec2-user/xxx_deploy/xxx_blog)에 .node-version이라는 이름의 보이지 않는 파일이 생성되며 그 안에 해당 디렉토리에서 사용하는 node의 버전이 설명됩니다.
덧붙여서 글로벌로 사용할 경우의 node 버전 지정
nodenv global 14.15.1
글로벌과 로컬 모두 지정했을 경우, 로컬로 지정하는 것이 우선다.
build
npm ci(少し時間かかる)
npm run build
Compiled successfully, Export successful 메세지로 build가 완료해, 프로젝트의 디렉토리에 out(디폴트)라고 하는 폴더가 생겨 여러가지 토출된다.
out 폴더내의 기사의 html 파일을 열면 문제 없게 기사가 표시되었으므로 build가 정상적으로 행해졌다고 판단.
기타 node 명령
node 제거
nodenv uninstall 14.15.1
nodenv 업데이트
nodenv update
nodenv 제거
~/.nodenv의 디렉토리를 지우는 것만
rm -rf $(nodenv root)
서버에서 직접 커멘드 실행으로 build가 정상적으로 행해졌으므로 다음은 GitHubActtion에서 push시에 자동으로 git로부터 최신 소스를 pull 후에 node 서버로 build 하는 구조를 아래와 같이 구현.
htps : // 코 m / 케이 ry / ms / 5568232516b8 예 323d4b
Reference
이 문제에 관하여(헤드리스 CMS+SSG를 도입할 때 노드 서버 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kerry/items/7a414f6fa2ca793c407e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
git clone https://github.com/nodenv/nodenv.git ~/.nodenv
nodenv를 빌드하여 실행 가능한 상태로 만듭니다.
cd ~/.nodenv && src/configure && make -C src
path를 통과
echo 'export PATH="$HOME/.nodenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(nodenv init -)"' >> ~/.bash_profile
path를 통해 명령을 두드리기
쉘 재시작
exec $SHELL -l
로그인 쉘을 다시 시작하여 새 구성 파일을 읽을 수 있습니다.
nodenv 버전 확인
nodenv --version
플러그인 설치
플러그인용 디렉토리 작성
mkdir -p "$(nodenv root)"/plugins
플러그인 설치(clone)
git clone https://github.com/nodenv/node-build.git "$(nodenv root)"/plugins/node-build
nodenv 업데이트용 플러그인 설치(clone)
git clone https://github.com/nodenv/nodenv-update.git "$(nodenv root)"/plugins/nodenv-update
nodenv update와 명령을 두드려 nodenv와 그 플러그인을 자동으로 업데이트 가능
노드 설치
설치 가능한 노드 버전 확인
nodenv install --list
노드 설치 (14.15.1은 현재 LTS 버전)
nodenv install 14.15.1
rehash 실행
nodenv rehash
· nodenv에서 node와 글로벌 npm 패키지를 볼 수 있도록
· 새로운 노드 버전을 넣거나 npm install -g 등을 실행할 때 실행해야합니다.
노드 버전 확인
nodenv versions
* 14.15.1 (set by /home/ec2-user/***_deploy/blog/.node-version)
노드 버전 지정
프로젝트에서 사용할 노드의 버전 지정
프로젝트 디렉토리에서만 사용할 노드 버전 지정
cd /home/ec2-user/xxx_deploy/blog
nodenv local 14.15.1
프로젝트의 디렉토리 (/home/ec2-user/xxx_deploy/xxx_blog)에 .node-version이라는 이름의 보이지 않는 파일이 생성되며 그 안에 해당 디렉토리에서 사용하는 node의 버전이 설명됩니다.
덧붙여서 글로벌로 사용할 경우의 node 버전 지정
nodenv global 14.15.1
글로벌과 로컬 모두 지정했을 경우, 로컬로 지정하는 것이 우선다.
build
npm ci(少し時間かかる)
npm run build
Compiled successfully, Export successful 메세지로 build가 완료해, 프로젝트의 디렉토리에 out(디폴트)라고 하는 폴더가 생겨 여러가지 토출된다.
out 폴더내의 기사의 html 파일을 열면 문제 없게 기사가 표시되었으므로 build가 정상적으로 행해졌다고 판단.
기타 node 명령
node 제거
nodenv uninstall 14.15.1
nodenv 업데이트
nodenv update
nodenv 제거
~/.nodenv의 디렉토리를 지우는 것만
rm -rf $(nodenv root)
서버에서 직접 커멘드 실행으로 build가 정상적으로 행해졌으므로 다음은 GitHubActtion에서 push시에 자동으로 git로부터 최신 소스를 pull 후에 node 서버로 build 하는 구조를 아래와 같이 구현.
htps : // 코 m / 케이 ry / ms / 5568232516b8 예 323d4b
Reference
이 문제에 관하여(헤드리스 CMS+SSG를 도입할 때 노드 서버 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kerry/items/7a414f6fa2ca793c407e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
echo 'export PATH="$HOME/.nodenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(nodenv init -)"' >> ~/.bash_profile
exec $SHELL -l
로그인 쉘을 다시 시작하여 새 구성 파일을 읽을 수 있습니다.
nodenv 버전 확인
nodenv --version
플러그인 설치
플러그인용 디렉토리 작성
mkdir -p "$(nodenv root)"/plugins
플러그인 설치(clone)
git clone https://github.com/nodenv/node-build.git "$(nodenv root)"/plugins/node-build
nodenv 업데이트용 플러그인 설치(clone)
git clone https://github.com/nodenv/nodenv-update.git "$(nodenv root)"/plugins/nodenv-update
nodenv update와 명령을 두드려 nodenv와 그 플러그인을 자동으로 업데이트 가능
노드 설치
설치 가능한 노드 버전 확인
nodenv install --list
노드 설치 (14.15.1은 현재 LTS 버전)
nodenv install 14.15.1
rehash 실행
nodenv rehash
· nodenv에서 node와 글로벌 npm 패키지를 볼 수 있도록
· 새로운 노드 버전을 넣거나 npm install -g 등을 실행할 때 실행해야합니다.
노드 버전 확인
nodenv versions
* 14.15.1 (set by /home/ec2-user/***_deploy/blog/.node-version)
노드 버전 지정
프로젝트에서 사용할 노드의 버전 지정
프로젝트 디렉토리에서만 사용할 노드 버전 지정
cd /home/ec2-user/xxx_deploy/blog
nodenv local 14.15.1
프로젝트의 디렉토리 (/home/ec2-user/xxx_deploy/xxx_blog)에 .node-version이라는 이름의 보이지 않는 파일이 생성되며 그 안에 해당 디렉토리에서 사용하는 node의 버전이 설명됩니다.
덧붙여서 글로벌로 사용할 경우의 node 버전 지정
nodenv global 14.15.1
글로벌과 로컬 모두 지정했을 경우, 로컬로 지정하는 것이 우선다.
build
npm ci(少し時間かかる)
npm run build
Compiled successfully, Export successful 메세지로 build가 완료해, 프로젝트의 디렉토리에 out(디폴트)라고 하는 폴더가 생겨 여러가지 토출된다.
out 폴더내의 기사의 html 파일을 열면 문제 없게 기사가 표시되었으므로 build가 정상적으로 행해졌다고 판단.
기타 node 명령
node 제거
nodenv uninstall 14.15.1
nodenv 업데이트
nodenv update
nodenv 제거
~/.nodenv의 디렉토리를 지우는 것만
rm -rf $(nodenv root)
서버에서 직접 커멘드 실행으로 build가 정상적으로 행해졌으므로 다음은 GitHubActtion에서 push시에 자동으로 git로부터 최신 소스를 pull 후에 node 서버로 build 하는 구조를 아래와 같이 구현.
htps : // 코 m / 케이 ry / ms / 5568232516b8 예 323d4b
Reference
이 문제에 관하여(헤드리스 CMS+SSG를 도입할 때 노드 서버 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kerry/items/7a414f6fa2ca793c407e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
nodenv --version
mkdir -p "$(nodenv root)"/plugins
git clone https://github.com/nodenv/node-build.git "$(nodenv root)"/plugins/node-build
git clone https://github.com/nodenv/nodenv-update.git "$(nodenv root)"/plugins/nodenv-update
설치 가능한 노드 버전 확인
nodenv install --list
노드 설치 (14.15.1은 현재 LTS 버전)
nodenv install 14.15.1
rehash 실행
nodenv rehash
· nodenv에서 node와 글로벌 npm 패키지를 볼 수 있도록
· 새로운 노드 버전을 넣거나 npm install -g 등을 실행할 때 실행해야합니다.
노드 버전 확인
nodenv versions
* 14.15.1 (set by /home/ec2-user/***_deploy/blog/.node-version)
노드 버전 지정
프로젝트에서 사용할 노드의 버전 지정
프로젝트 디렉토리에서만 사용할 노드 버전 지정
cd /home/ec2-user/xxx_deploy/blog
nodenv local 14.15.1
프로젝트의 디렉토리 (/home/ec2-user/xxx_deploy/xxx_blog)에 .node-version이라는 이름의 보이지 않는 파일이 생성되며 그 안에 해당 디렉토리에서 사용하는 node의 버전이 설명됩니다.덧붙여서 글로벌로 사용할 경우의 node 버전 지정
nodenv global 14.15.1
글로벌과 로컬 모두 지정했을 경우, 로컬로 지정하는 것이 우선다.build
npm ci(少し時間かかる)
npm run build
Compiled successfully, Export successful 메세지로 build가 완료해, 프로젝트의 디렉토리에 out(디폴트)라고 하는 폴더가 생겨 여러가지 토출된다.
out 폴더내의 기사의 html 파일을 열면 문제 없게 기사가 표시되었으므로 build가 정상적으로 행해졌다고 판단.
기타 node 명령
node 제거
nodenv uninstall 14.15.1
nodenv 업데이트
nodenv update
nodenv 제거
~/.nodenv의 디렉토리를 지우는 것만
rm -rf $(nodenv root)
서버에서 직접 커멘드 실행으로 build가 정상적으로 행해졌으므로 다음은 GitHubActtion에서 push시에 자동으로 git로부터 최신 소스를 pull 후에 node 서버로 build 하는 구조를 아래와 같이 구현.
htps : // 코 m / 케이 ry / ms / 5568232516b8 예 323d4b
Reference
이 문제에 관하여(헤드리스 CMS+SSG를 도입할 때 노드 서버 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kerry/items/7a414f6fa2ca793c407e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)