AWS EC2 サーバー構築(Git編)
AWS EC2 サーバー構築(Git編)
概要
サーバーへデプロイする方法は本当にたくさんありますが、とりあえずGitを使ったシンプルな形でのデプロイの方法をご紹介します。
ちなみに、この方法はAWSに全く依存していません。(良くも悪くもねw)
手順
1. Gitインストール
Gitをサーバーにインストールします。
$ sudo yum install -y git
$ git version
git version 2.23.4
2. キーペアの作成及びGithubへ登録
2-1. 秘密鍵を置く場所に移動
cd ~/.ssh
2-2. 秘密鍵作成
ssh-keygen -t rsa -b 4096
色々聞かれますが、全部Enter
でOKです。
秘密鍵の権限も制限しておきましょう。
chmod 600 id_rsa
2-3. 公開鍵の中身をコピー
cat ~/.ssh/id_rsa.pub
2-4. Githubのリポジトリに公開鍵を登録する
Githubにアクセスして、リポジトリを開きます。
メニューにある「Setting」を選択してください。
「Add deploy key」をクリックします。
2-3.でコピーした公開鍵の中身を貼り付けます。
「Title」はわかりやすい名前を付けておくと良いです。
2-5. サーバーから接続確認
ssh -T [email protected]
You've successfully authenticated
というメッセージが確認できたらOKです。
3. リポジトリをクローン
# テストディレクトリを作成して、権限と所有者を変更します。
sudo mkdir /test
sudo chmod -R 775 /test
sudo chown -R ec2-user:ec2-user /test
cd /test
git init
git clone [email protected]:test/test-repository.git
おまけ
毎回手動でSSH接続してデプロイするなんて面倒なそこのアナタへ
シェルスクリプトを用意して、シェルの実行だけでデプロイできるようにしておきましょう。
構成
ローカル環境に以下の2つのシェルファイルを用意します。
deploy.sh
はローカルで実行するシェルファイル、exec.sh
はリモートサーバーで実行するシェルファイルになります。
.
├── deploy.sh
└── exec.sh
deploy.sh
SSH接続して、接続先でexec.sh
を実行するようになります。
#!/bin/sh
HOST=XXX.XXX.XXX.XXX
USER=ec2-user
PRIVATE_KEY="~/.ssh/private.pem"
ssh -i ${PRIVATE_KEY} ${USER}@${HOST} < exec.sh
exec.sh
リモートサーバーで実行したいことを書いちゃってください。
今回はgit pull
だけ行うようにしています。
# git pull
cd /test/test-repository
git checkout master
git pull origin master
実行
ローカルからdeploy.sh
を実行するだけです。
sh deploy.sh
Author And Source
この問題について(AWS EC2 サーバー構築(Git編)), 我々は、より多くの情報をここで見つけました https://qiita.com/A-Kira/items/dc271c0b1aaed77bd490著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .