GithubActionを使用してエックスサーバーにデプロイする
投稿日:2021年11月28日
最終更新日:2021年12月04日
サイトを作成し、更新するたびにFileZillaを使用してサーバーにデプロイする。これがとっても面倒くさいので、自動でデプロイする仕組みを実践した。
目次
FTPでファイルをアップロードするのが面倒くさい
今まで多くの人がそうであるように、
- サイト作成
- Githubに最新バージョンをプッシュ
- FileZillaをしようしてサーバーにデプロイ
- 修正
- Githubに最新バージョンをプッシュ
- FileZillaをしようしてサーバーにデプロイ
というフローを踏んでサイトを運用してきた。
が、これが面倒でしかたない。
どうせGithubにあげたものをデプロイするのであれば、プッシュと同時にデプロイができればいいのに…!
レンタルサーバーでもできるのか?
Firebase Hosting、Netlify ...、などを使えばできることは知っている。
しかしレンタルサーバーでもできるのか?
正直レンタルサーバーは上記サーバーに比べて劣るイメージがある。
エックスサーバーで簡単にできた
まずはエックスサーバー万歳三唱🙌🙌🙌
本サイトはエックスサーバーを作っているのだが、エックスサーバーならGithub Action と連携できることを知った。
これで今までのフローとストレスと労力が半減された。
さらには常に最新バージョンがデプロイされるという先祖返りの危機もなくなった。
最後にエックスサーバー万歳三唱🙌🙌🙌
マルチドメイン、サブドメインメールアドレス、FTPアカウント、全て無制限!

どうやって実現するのか
すごく簡単なので、特に考えすぎずに実行してほしい。
エックスサーバー側の設定
特にないけれど、エックスサーバーのサーバーパネルで
- ftpサーバのホスト
- ftpサーバのアカウント名
- ftpサーバのパスワード
を確認してメモをしておく。
参考:FTPソフトの設定 | レンタルサーバーならエックスサーバー
Github側の設定
対象リポジトリのSettings > Secrets に下記情報を入力する。
FTP_PASSWORD
→ ftpサーバのホスト
FTP_SERVER
→ ftpサーバのアカウント名
FTP_USERNAME
→ ftpサーバのパスワード
deploy.ymlの作成
対象リポジトリ直下に.github/workflows/ディレクトリを作成し、その下にdeploy.ymlファイルを設置する。
そこに下記情報を入力すれば完了。
on:
push:
branches:
- main
name: Deploy
jobs:
FTP-Deploy-Action:
name: FTP-Deploy-Action
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: FTP-Deploy-Action
uses: SamKirkland/FTP-Deploy-Action@2.0.0
env:
FTP_SERVER: ${{ secrets.FTP_SERVER }}
FTP_USERNAME: ${{ secrets.FTP_USERNAME }}
FTP_PASSWORD: ${{ secrets.FTP_PASSWORD }}
LOCAL_DIR: ./
REMOTE_DIR: /デプロイ対象のサイト/public_html/
あとはmainブランチにプッシュする、ただそれだけでサイト運営が嘘のように楽になる。
ぜひ、試してみてはどうでしょうか。
エックスサーバーができるので、当然他のレンタルサーバーでもできるのかもしれないが、上記方法はエックスサーバーでの方法になるので、悪しからず。
- # Github
- # Github Action
- # Wordpress
- # エックスサーバー
- # 効率化
この記事に対するコメント