CentOS 7에 Hexo 설치

Hexo는 Node.js로 빌드 된 정적 블로그 플랫폼입니다. Jekyll과 같은 다른 정적 블로그 플랫폼에 비해 빠릅니다.

이 학습서에서는 Hexo 블로그를 빌드하고 배치하는 방법에 대해 설명합니다. CentOS 7, Node.js 4.4 용으로 작성된 단계는 매우 간단합니다. 내 로컬 컴퓨터는 Fedora 23입니다.

전제 조건

새롭게 설치된 CentOS 7 시스템으로 시작합니다. 다음과 같은 소프트웨어 패키지가 필요합니다.

  • gcc-c 및 gcc-c ++
  • 확인하고 자식
  • 니 진스
  • openssl
  • nodejs와 npm

루트 또는 sudo 권한이있는 사용자로 로그인해야합니다.

유틸리티 설치

$ yum install -y gcc gcc-c++ make git openssl

Nginx 설치

nginx기본 저장소에서 설치할 수 있습니다 .

$yum install -y nginx

... 또는 공식 Nginx 저장소에서 안정적인 버전을 설치하십시오. 여기에서 후자를 선택하십시오.

내용이 다음 인 repo 파일을 작성하십시오 nginx.repo.

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
enabled=1

... 그것을하기 복사 /etc/yum.repo.d/,

$ cp nginx.repo /etc/yum.repo.d/
$ yum update and yum install -y nginx
$ systemctl enable nginx and systemctl start nginx

Node.js 설치

공식 Node.js 저장소에서 오랫동안 지원되는 Node.js를 설치합니다.

$ curl --silent --location https://rpm.nodesource.com/setup_4.x | bash -
$ yum update and yum install -y nodejs

새로운 사용자 만들기

루트에는 슈퍼 유저 권한이 있기 때문에 일반적으로 블로그를 실행할 일반 사용자를 만드는 것이 좋습니다.

여기에서 이름이 지정된 사용자를 작성 vultr하여 그룹 wheel및에 추가하십시오 nginx.

$ useradd -d /home/vultr -m -r -U -s /bin/bash
$ passwd vultr
$ usermod -aG nginx vultr
$ usermod -aG wheel vultr

SSH 키 페어 생성

ssh 키를 통해 로그인하는 것이 유용하고 필요합니다.

$ ssh-keygen -b 4096 -C "vultr@example.com"

ssh 키 쌍을 만든 후 공개 키 (일반적으로 id_rsa.pub)를 ~/.ssh/authorized_keys서버에 복사하십시오 .

ssh-copy-id -i ~/.ssh/id_rsa.pub vultr@example.com

이제 모든 사전 구축 패키지가 설치되었습니다.

Hexo 블로그 구축

Hexo 설치

vultr사용자 로 로그인하십시오 . 그런 다음, 생성 ~/web/web/vultr~/web/git/vultr:

### This is our hexo blog root directory
$ mkdir -p ~/web/web/vultr
### This is our git repository directory on the server
$ mkdir -p ~/web/git/vultr
### This is our deploy directory
$ mkdir -p ~/web/git/hexo

를 입력 ~/web/web/vultr하고 Hexo를 설치하십시오.

$ cd ~/web/web/vultr
$ sudo npm install -g hexo-cli hexo-server
$ hexo init && npm install --save

이제 새 블로그를 만들어야합니다.

_config.yml블로그 사이트 URL을 변경 하려면를 수정하십시오 . 그런 다음 다음을 실행하십시오.

$ hexo g

귀하의 블로그가 생성되었습니다. HTML 파일은 아래에 ~/web/web/vultr/public있습니다.

Nginx 서버 설정

현재 웹 사이트에 액세스 할 수 없습니다. 따라서 Nginx를 구성해야합니다.

Nginx에라는 이름의 사용자로 실행 nginx에서 nginx그룹 및의 것을하는 것은 우리는 추가해야하는 이유 vultr그룹 nginx.

$ chown -R vultr:nginx ~/web

라는 Nginx의 설정 파일 만들기 vultr.conf아래 ~/web/내용이 더 많거나 적은 같은 인의를 :

server {
    listen 80;
    listen [::]:80;
    ## if https is desired, please uncomment the following lines
    #listen 443 ssl http2;
    #listen [::]:443 ssl http2;

    server_name example.com, www.example.com;

    ## if forcing https, please uncomment the following lines
    #if ($scheme = http) {
    #    return 301 https://$server_name$request_uri;
    #}

    location / {
    root /home/vultr/web/web/vultr/public;
    index index.html;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    ## if https is desired, please uncomment the following lines
    #proxy_set_header X-Forwarded-Proto https;
    }
}

복사 vultr.conf/etc/nginx/config.d/Nginx에를 다시 시작합니다 :

$ sudo ln -sf ~/web/vultr.conf /etc/nginx/config.d/
$ sudo systemctl restart nginx

이제 블로그는 웹 브라우저를 통해 액세스 할 수 있습니다.

Git을 사용하여 블로그 배포

블로그가 이미 설정되어 있으므로 튜토리얼의이 부분은 선택 사항입니다.

이 시점에서, 우리는 서버에 로그인하고 글을 써야하므로 블로그 게시물을 작성하는 것이 약간 불편합니다. 더 나은 솔루션은 로컬 컴퓨터에 쓰고 서버에 포스트를 푸시하고 Hexo가 자동으로 정적 파일을 생성하도록하는 것입니다. git에 많은 작업을 수행 할 수있는 후크가 있다고 가정하면 git hook을 사용하여이 설정을 수행 할 수 있습니다.

서버에서 베어 리포지토리 생성

사용자로 서버에 다시 로그인하십시오 vultr. Bare 저장소를 작성하십시오.

$ cd ~/web/git/vultr
$ git init --bare
$ cd hooks

post-receive푸시 할 때마다 블로그를 배포 할 bash 파일을 작성하십시오 .

#!/bin/bash
deploy_to_dir="/home/vultr/web/git/hexo"

GIT_WORK_TREE=$deploy_to_dir git checkout -f master
echo "DEPLOY:   master  copied to  $deploy_to_dir"

hexo_dir="/home/vultr/web/web/vultr/"

cd $hexo_dir

hexo clean && hexo --silent g

if [[ $? == 0 ]]; then
    echo "Congratulations! Your blog has been correctly deployed"
else:
    echo "Unfortunately your blog has not been deployed correctly"
fi

배포가 작동하기 전에 서버에서 다음 명령을 실행해야합니다.

cd ~/web/web/vultr/
rm -rf source scaffolds _config.yml themes
ln -sf /home/vultr/web/git/hexo/themes/tranquilpeak  themes/
ln -sf /home/vultr/web/git/hexo/source .
ln -sf /home/vultr/web/git/hexo/scaffolds .
ln -sf /home/vultr/web/git/hexo/_config.yml .

로컬 자식 저장소를 설정하십시오.

로컬 머신에서 리포지토리도 만들어야합니다. Fedora 이외의 데스크탑 OS를 사용하는 경우이 단계가 다를 수 있습니다.

자식이 설치되어 있어야합니다.

로컬 자식 저장소를 설정하십시오 :

$ mkdir -p ~/vultr/git/vultr`
$ cd ~/vultr/git/vultr and git init
$ git remote add production ssh://vultr@example.com:/home/vultr/web/git/vultr

게시물을 작성하려면 로컬 컴퓨터에 Hexo를 설치하는 것이 좋습니다. 여기서는 쓰기위한 Hexo 디렉토리를 설정합니다.

$ mkdir ~/vultr/vultr && cd ~/vultr/vultr
$ hexo init && npm install --save
$ mv  source  _config.yml themes scaffolds ~/vultr/git/vultr
$ ln -sf ~/vultr/git/vultr/source .
$ ln -sf ~/vultr/git/vultr/_config.yml .
$ ln -sf ~/vultr/git/vultr/scaffolds .
$ hexo new "Test Post"

설정이 완료되었습니다. 다음 명령을 사용하여 서버에 게시물을 푸시 할 수 있습니다.

$ cd ~/vultr/git/vultr
$ git add . && git commit -m "new post"
$ git push production master

성공하면 블로그가 자동으로 업데이트됩니다. 건배.

댓글 남기기

NTLite를 사용하여 업데이트로 Windows 사용자 지정 ISO를 만드는 방법

NTLite를 사용하여 업데이트로 Windows 사용자 지정 ISO를 만드는 방법

NTLite를 사용하여 Vultr 시스템과 호환되는 Windows 사용자 지정 ISO를 만드는 방법을 단계별로 설명합니다. 최신 드라이버와 업데이트 통합을 포함한 완벽 가이드.

Vultr에서 BGP 구성

Vultr에서 BGP 구성

Vultr BGP 설정을 위한 단계별 튜토리얼. ASN 할당부터 IP 라우팅 구성, BIRD 데몬 설정, FreeBSD 특이사항 및 실전 문제 해결 팁 7가지 포함한 최종 가이드

WsgiDAV를 사용하여 Debian 10에 WebDAV 배포

WsgiDAV를 사용하여 Debian 10에 WebDAV 배포

WebDAV (Web Distributed Authoring and Versioning)를 이용한 원격 파일 작성을 위한 프레임워크로, WsgiDAV 설치 및 구성 방법을 안내합니다.

데비안 7에 Mailcow 설치

데비안 7에 Mailcow 설치

Mailcow는 DoveCot, Postfix 및 기타 여러 오픈 소스 패키지를 기반으로 하는 경량 메일 서버입니다. 데비안에서 Mailcow 설치 방법을 안내합니다.

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

랜섬웨어 공격이 증가하고 있지만 AI가 최신 컴퓨터 바이러스를 처리하는 데 도움이 될 수 있습니까? AI가 답인가? AI boone 또는 bane인지 여기에서 읽으십시오.

ReactOS: 이것이 Windows의 미래입니까?

ReactOS: 이것이 Windows의 미래입니까?

오픈 소스이자 무료 운영 체제인 ReactOS가 최신 버전과 함께 제공됩니다. 현대 Windows 사용자의 요구 사항을 충족하고 Microsoft를 무너뜨릴 수 있습니까? 이 구식이지만 더 새로운 OS 환경에 대해 자세히 알아보겠습니다.

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

Whatsapp은 마침내 Mac 및 Windows 사용자용 데스크톱 앱을 출시했습니다. 이제 Windows 또는 Mac에서 Whatsapp에 쉽게 액세스할 수 있습니다. Windows 8 이상 및 Mac OS 10.9 이상에서 사용 가능

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

인공 지능이 소규모 회사에서 어떻게 인기를 얻고 있으며 어떻게 인공 지능이 성장할 가능성을 높이고 경쟁자가 우위를 점할 수 있는지 알아보려면 이 기사를 읽으십시오.

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

최근 Apple은 문제를 해결하기 위해 macOS Catalina 10.15.4 추가 업데이트를 출시했지만 이 업데이트로 인해 Mac 컴퓨터의 브릭킹으로 이어지는 더 많은 문제가 발생하는 것 같습니다. 자세히 알아보려면 이 기사를 읽어보세요.

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구