Gitlab自動デプロイ&さくらサーバーGit

PC関連

ローカルからGitlabにプッシュでサイト更新したい。

CI/CDのパイプラインを使ったやり方もあるみたいだが、今回はwebhookとphpを採用。

※CI/CDの方だと時間指定してサイトに更新を反映等できる。

■環境
OS:Mac
さくらサーバー:SSH接続ができるスタンダードプラン以上

Gitlabに新規プロジェクト作成

普通に作るだけ。

※Initialize repository with a README にはチェックを入れない

ローカルリポジトリからプッシュ

Gitlabに作ったリポジトリをローカルへclone。
※ローカルに既にgitがある場合でGitlabにcloneしたい場合は別の方法

てきとーにcommitしてプッシュ。
(てきとーといいつつ以下のようにした)

  1. gitignoreを追加
  2. init(ファイルadd)

※空のcommitをする必要はなさそう

さくらサーバーにSSH接続しGitクローン

ターミナルを開いてSSHでさくらサーバーに接続

ssh testuser@testuser.sakura.ne.jp
// パスワードが求められるので入力
testuser@testuser.sakura.ne.jp's password:*********

※初回接続時の場合警告文がでてyes/noを聞かれる→yesでOK

繋がったらgitディレクトリを作成したい場所まで移動して、
※ターミナルのコマンドはこういうサイトを参考に。

git clone [url] [ディレクトリ]

[url] = https://ID:パスワード@gitlab.com/***.git
[ディレクトリ]は必要なければ入れなくて良い = 既にgitが存在する場合は新規フォルダを作ってclone、既存の.gitディレクトリを削除してcloneした.gitディレクトリを移動する。

git pull origin master

確認の為pullしてみる。
※cloneしてるのでリモートリポジトリの指定や追加はしなくて良いぽい。

さくらサーバーにdeploy-***.php設置

deploy-***.phpを作成して公開領域直下に設置。

*** = 乱数

パスワード生成(パスワード作成)ツール
パスワード生成(パスワード作成)するweb・ウェブ制作に役立つ便利ツール。お好みのパスワードを生成(自動作成)することができるツールです。利用は完全無料です。

Gitllabのwebhook設定

Gitlabの設定からWebhooksページへ。

上記のdeploy-***.phpのURLとSecret Key を入力してPushEventにチェックを入れてAdd Webhook。

※Secret Keyはdeploy-***.php内にも記入
終わり。

コメント

スポンサーリンク
タイトルとURLをコピーしました