Gatsbyjs를 GitLab의 CI/CD로 자동으로 렌탈 서버에 배포해 본 설정
참고 : GitLab에 커밋한 후 FTP로 서버에 업로드하는 자동화를 1분 내에 수행하는 방법. - "Git" | webmanab.html / 웹 마나부
프로젝트 만들기
$ npx -p gatsby-cli gatsby new hoge-site
$ cd hoge-site
$ npx gatsby develop
http://localhost:8000/ 에서 사이트가 시작되었으므로 이것을 GitLab의 CI/CD로 대여 서버로 ftp 전송해 보겠습니다.
ftp 연결 정보 설정
GitLab의 왼쪽 메뉴에서 Settings > CI/CD > Variables를 선택하고 Key
HOST
"hogefugaxxx.sakura.ne.jp"
USERNAME
"yourName"
PASSWORD
"yourPass"
LOCAL
"./public"
로컬 배포할 폴더 지정
SERVER
"/home/hogefugaxxx/www/site/path"
배포하려는 임대 서버의 경로
Value 설정
.gitlab-ci.yml
를 프로젝트 바로 아래에 작성
gitlab-ci.ymlimage: node
before_script:
- npm install
- npm run build
build:
script:
- apt-get update -qq && apt-get install -y -qq lftp
- lftp -c "set ftp:ssl-allow no; open -u $USERNAME,$PASSWORD $HOST; mirror -R $LOCAL $SERVER --parallel=10"
only:
- master
.gitlab-ci.yml
를 커밋에 포함한 상태에서 master에 push나 merge 등을 하면 자동으로 gatsbyjs를 빌드하고 .gitlab-ci.yml
폴더를 렌탈 서버에 배포해 주었습니다.
사쿠라의 렌탈 서버로 갔는데, 기본적으로 국외 IP 주소로부터의 ftp 액세스를 제한하고있는 것 같기 때문에 거기도 빼지 않으면 안됩니다.
또, public
를 설치하고 있는 경우도 설정에 따라서는 gitlab의 ci로부터의 ftp 액세스를 할 수 없기 때문에, 거기도 조심하면 좋다고 생각했습니다.
보고 주셔서 감사합니다 m (_ _) m
Reference
이 문제에 관하여(Gatsbyjs를 GitLab의 CI/CD로 자동으로 렌탈 서버에 배포해 본 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/okumurakengo/items/74d7a860d29b0da4e15c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ npx -p gatsby-cli gatsby new hoge-site
$ cd hoge-site
$ npx gatsby develop
GitLab의 왼쪽 메뉴에서 Settings > CI/CD > Variables를 선택하고
Key
HOST
"hogefugaxxx.sakura.ne.jp"
USERNAME
"yourName"
PASSWORD
"yourPass"
LOCAL
"./public"
로컬 배포할 폴더 지정
SERVER
"/home/hogefugaxxx/www/site/path"
배포하려는 임대 서버의 경로
Value 설정
.gitlab-ci.yml
를 프로젝트 바로 아래에 작성
gitlab-ci.ymlimage: node
before_script:
- npm install
- npm run build
build:
script:
- apt-get update -qq && apt-get install -y -qq lftp
- lftp -c "set ftp:ssl-allow no; open -u $USERNAME,$PASSWORD $HOST; mirror -R $LOCAL $SERVER --parallel=10"
only:
- master
.gitlab-ci.yml
를 커밋에 포함한 상태에서 master에 push나 merge 등을 하면 자동으로 gatsbyjs를 빌드하고 .gitlab-ci.yml
폴더를 렌탈 서버에 배포해 주었습니다.
사쿠라의 렌탈 서버로 갔는데, 기본적으로 국외 IP 주소로부터의 ftp 액세스를 제한하고있는 것 같기 때문에 거기도 빼지 않으면 안됩니다.
또, public
를 설치하고 있는 경우도 설정에 따라서는 gitlab의 ci로부터의 ftp 액세스를 할 수 없기 때문에, 거기도 조심하면 좋다고 생각했습니다.
보고 주셔서 감사합니다 m (_ _) m
Reference
이 문제에 관하여(Gatsbyjs를 GitLab의 CI/CD로 자동으로 렌탈 서버에 배포해 본 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/okumurakengo/items/74d7a860d29b0da4e15c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
image: node
before_script:
- npm install
- npm run build
build:
script:
- apt-get update -qq && apt-get install -y -qq lftp
- lftp -c "set ftp:ssl-allow no; open -u $USERNAME,$PASSWORD $HOST; mirror -R $LOCAL $SERVER --parallel=10"
only:
- master
Reference
이 문제에 관하여(Gatsbyjs를 GitLab의 CI/CD로 자동으로 렌탈 서버에 배포해 본 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/okumurakengo/items/74d7a860d29b0da4e15c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)