Git 버전 제어를 통해 Gatsby 사이트를 cPanel에 지속적으로 배포
8669 단어 reactgitjavascriptgatsby
내 사이트를 배치할 때 나는 내가 이미 10여 년 동안 가지고 있는 가상 공유 위탁 관리 계정을 계속 사용하기로 결정했다.내 제품 조합은 오랫동안 배치될 수 있기 때문에 내가 관리하고 관리하는 모든 다른 사이트와 다른 클라우드 기반의 위치에 배치하는 것이 합리적이라는 것을 진정으로 증명할 수 없다.나는 클라우드 기반의 배치 해결 방안을 익힐 충분한 시간이 있다.
cPanel을 사용하여 Gatsby 사이트를 배치하려면, cPanel에 홈 페이지를 만들고, Git 버전 제어를 사용하여 cPanel에 Git 저장소를 만들어야 합니다.
게이츠비 사이트 만들기
먼저 게이츠비 사이트를 만들면 게이츠비Quick Start guide를 사용하여 빠르게 시작하고 실행할 수 있습니다.나는 Melanie Nolan's Gatsby-Starter-Tailwind-CSS부터 시작한다.
$ gatsby new gatsby-cpanel-deploy https://github.com/melanienolan/gatsby-starter-tailwind-css
다음 도구를 사용하여 설치를 테스트합니다.$ cd gatsby-cpanel-deploy
$ gatsby develop
cPanel 정의 배포 지침
다음은 프로젝트 디렉터리에
.cpanel.yml
파일을 만드는 데 배치 설명을 사용합니다.---
deployment:
tasks:
- export DEPLOYPATH=/home/<username>/<public_html>/
- /bin/cp -R public/* $DEPLOYPATH
deployment
와 tasks
키를 추가합니다.DEPLOYPATH
를 정의합니다.사용자 계정 사용자 이름
<username>
과 사이트 디렉토리에 있는 파일의 위치<public_html>
를 바꿉니다.많은 배치 상황에 대해 public_html
일 수 있지만, 내 계정의 추가 영역에 있는 하위 폴더에 배치하고 있기 때문에 내 경로는 demos.rezac.dev/gatsby-cpanel-deploy
일 것이다.두 번째 BASH 명령은 지정한 파일이나 디렉터리를
$DEPLOYPATH
에 정의된 디렉터리에 배치합니다.gatsby build
를 실행하면 게이츠비는 자동으로 모든 파일public/
폴더에 쓰기 때문에 public/*
이 디렉터리에 있는 모든 파일을 배치합니다.너의 개츠비 사이트를 세우다
gatsby build
를 실행하여 사이트의 구축 파일과 public
폴더를 만들고 gatsby serve
를 실행하여 구축을 검사합니다.환매 협의의 변경을 추진하다.기본적으로 많은 Gatsby 초보자들은
public
를 .gitignore
에 추가하기 때문에 Git 버전 제어가 최종적으로 리포에서 이 파일에 접근할 수 있도록 삭제해야 한다.Git 버전 제어 설정
.cpanel.yml
에서 배치 설명을 정의하고 사이트의 구축을 GitHub 저장소로 전송한 후에 Git 버전 제어를 사용하여 cPanel에 두 번째 원격 저장소를 설정하려고 합니다.Code
단추를 누르고 URL을 복사하여 GitHub의 리포에서 GitHub 저장소 클론 URL을 가져옵니다.나는 HTTPS URL을 더 좋아한다.Git Version Control
로 이동하고 Create
단추를 누르세요.repositories
디렉토리에 있는 GitHub 저장소 이름으로 저장됩니다.Create
.Git 릴리즈에서 배포 제어
처음 배치하려면Git 버전 제어에서 저장소 목록에 있는 새 리포 옆에 있는
Manage
단추를 누르십시오.Pull or Deploy
탭을 클릭한 다음 Deploy HEAD Commit
버튼을 클릭합니다.Git 버전 제어는 즉시 배치에 줄을 서고 배치가 완료될 때 마지막 배치 정보를 추가합니다.
로컬 저장소에서 Git 버전 제어를 위한 지속적인 배포 설정
GitHub에서 변경 사항을 저장소로 푸시할 때 Git 버전 제어의 저장소
Pull or Deploy
탭으로 돌아가서 Update from Remote
및 Deploy HEAD Commit
를 클릭하여 사이트에서 실시간으로 변경할 수 있습니다.변경 사항을 GitHub로 전송하고 cPanel에 로그인하고 변경 사항이 적용되기 전에 수동으로 두 프로세스를 시작해야 하기 때문에 너무 번거로울 수 있습니다.더욱 간단한 해결 방안은 로컬 저장소에 연속 배치 파이프라인을 설치하고 Git 버전 제어를 통해 가능한 것이다.
Repo
Basic Information
탭에서 Git 버전에서 Repo를 제어하는 클론 URL을 복사합니다.로컬 저장소에서 다음을 실행합니다.
$ git remote add <remotename> <cloneurl>
그중<remotename>
은 새 리모컨의 유일한 이름입니다. 저는 보통 이 리모컨을 cpanel
라고 명명하고 GitHub 리모컨을 origin
라고 명명합니다. 그리고 <cloneurl>
는 Git 버전 제어에서 얻은 복제 URL입니다.git remote -v
명령을 사용하면 이 명령이 유효한지 확인할 수 있습니다. 이 명령은 설정한 리모컨을 보여 줍니다.$ git remote -v
cpanel <cpanel clone url> (fetch)
cpanel <cpanel clone url> (push)
origin <github clone url> (fetch)
origin <github clone url> (push)
현재 배포 주기는 다음과 같습니다.$ gatsby build
$ git add .
$ git commit -m "Update build"
$ git push origin main
$ git push cpanel main
Git 버전 제어는 배포가 완료되면 터미널 창에 진행 상태를 표시합니다.Enumerating objects: 32, done.
Counting objects: 100% (32/32), done.
Delta compression using up to 4 threads
Compressing objects: 100% (18/18), done.
Writing objects: 100% (19/19), 15.08 KiB | 3.77 MiB/s, done.
Total 19 (delta 11), reused 0 (delta 0)
remote: Recieved update on checked-out branch, queueing deployment.
remote: ---
remote: apiversion: 3
remote: func: create
remote: module: VersionControlDeployment
remote: result:
remote: data:
remote: deploy_id: 17
remote: log_path: /home/cranewif/.cpanel/logs/vc_1604266002.21772_git_deploy.log
remote: repository_root: /home/cranewif/repositories/gatsby-cpanel-deploy
remote: sse_url: /sse/UserTasks/00000000_5f9f2812355a77/vc_1604266002.21772_git_deploy.log
remote: task_id: 00000000/5f9f2812355a77
remote: timestamps:
remote: queued: '1604266002.23371'
remote: errors: ~
remote: messages: ~
remote: metadata: {}
remote:
remote: status: 1
remote: warnings: ~
To ssh://jlrezac.com/home/cranewif/repositories/gatsby-cpanel-deploy
494f663..57b1676 main
이론적으로 public
폴더에 cPanel remote를 설정할 수도 있지만 gatsby build
는 실행할 때마다 public
폴더의 내용을 삭제하기 때문에 .cpanel.yml
파일을 Gatsby 파일과 같은 디렉터리에 저장하고 사이트를 재건할 때마다 .gitignore
와 함께 복사해야 한다는 것을 기억하십시오.나는 이 해결 방안에 대해 매우 흥미를 가지고 있기 때문에, 만약 당신이 그것을 시도한다면, 나에게 그것이 당신에게 어떤 효과가 있는지 알려주십시오.에릭 잔토가 시작하게 해줘서 고마워deploying a Gatsby site using Git Version Control.
이것은 내가 Dev.to에 올린 첫 번째 진정한 게시물이다.나는 너의 생각을 듣고 매우 기뻤다.
Reference
이 문제에 관하여(Git 버전 제어를 통해 Gatsby 사이트를 cPanel에 지속적으로 배포), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/cheerupemodev/continuous-deployment-of-a-gatsby-site-to-cpanel-with-git-version-control-5ha2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)