📅 July 08, 2019
•⏱️7 min read
ココまでは問題ないでしょうか?
出来ていない方は、前回記事を読んでローカル環境まで作った状態にしておいてくださいmm
Netlifyへコンテンツをデプロイする場合、
Githubを通さずともローカルでビルドしてCLIでデプロイ出来ます。
ですが、これだと記事を更新するたびにローカルでの操作が必要で、
僕がめんどくさがってた記事のコミットと変わらない状態になってしまいます。
Github上に置いて+Netlifyから参照できるようにしておけば、
Netlify側に「ビルドよろ~」とお願いするだけで
ブログの更新が出来ます!!!(Netlifyスゴイ)
Githubのアカウントにログイン後、
リポジトリの作成を行いましょう。
これで、リポジトリ作成ができました。
リポジトリURL: https://github.com/{アカウント名}/{ブログ名}.git
前回作成したプロジェクトをCommitして、Pushしておきましょう。
※何も変更してないなら、CommitまではGatsbyJSがやってくれているはず。
今回はPushだけします。
プロジェクトのあるディレクトリで以下のコマンドを実行しましょう!
$ git remote add origin {リポジトリURL}
$ git push origin master
ブラウザ上で、リポジトリを覗いてみてください。 上がってますかね...??
上がっていなかったら、、、ググって頑張ってくださいw
Github上に資産がある状態まできたら、
Netlifyの設定に入ります~。
作成していたアカウントでログイン後、
New site from Gitからサイト作成に進みます。
先程上げておいたリポジトリ、およびmasterブランチを選択してサイトを作成しましょう!!
ビルド設定は、
buildeコマンドはgatsby build
です。
publish directoryはpublic/
です。
branch deploysは、allを選択しておけば全てのpushで自動デプロイしてくれます。
。。。以上!簡単すぎる!!!
が、このままではAPIkeysが未設定なので、
ビルドエラーとなります。
ローカル環境構築の際は、setupを叩くことで
gitignoreされたkeyファイルが生成されていました。
セキュリティ的にkeyファイルをリポジトリで
管理するわけにはいかないので、
Netlify上では環境変数へ設定するようにしましょう!
Environment variablesに以下の内容を設定します。
(設定のbuilde&deploy配下にあるはず)
設定できたら、Trigger deployからリビルドしてみましょう!
※今回GoogleAnalyticsは省略でOKです
これで、ホストされましたか??
URLはNetlifyの画面上ら辺に書いてるのでアクセスしてみてください!
ちなみに、サイト名は変えることが可能です。
変えることで https://サイト名.netlify.com
とURL変更もできます。
今回設定した自動デプロイは、
リポジトリが更新された場合のみ動きます。
記事が更新された場合は手動でデプロイする必要がありますね、、、
Contentful上で記事のpublishが行われた場合に自動デプロイするには、
Netlifyのwebhookを使うことで解決します。
Netlify上の設定からadd builde hookで設定を追加して、
URLの取得を行いましょう。
次に、Contentfulのスペースを開き、
Setting → webhookから先程取得したURLを設定します。
Triggersはデフォルトで問題ないでしょう。
Contentful上のサンプル記事のタイトルを更新して、publishしてみてください。
すぐにNetlify上でビルドが始まるはずです。
ビルド完了を待ってサイトへ飛んでみましょう!
これにで目標であった、
GatsbyJS+Contentful+Netlifyの構成でブログ作成が完了しました!
後はサイト名やfavicon等を変えるためにGit管理している設定ファイルを少し弄ったりするだけですね。(今回は説明しません)
Contentful上に初期化で作成された記事を削除、
新規作成してオリジナルのものに変えていきましょう!
ちなみに、、、
全部消すとデータなしでビルドエラーになると思います。
以上!!
久々のブログで見づらいかもしれませんが、
参考にしてくれると嬉しいです!!