TS-351(QNAP)でGitLab-runnerを爆速で作る方法の話
GitLabで開発していると必ず欲しくなるCI/CD サーバ立てるのもめんどくさいし…
情報調べても… dockerばっかりの情報だよぉ〜ローカルで入れてくれればいいんだよ
なんて思っている人に朗報です!
TS-351(QNAP)を使えば可能です!
私はおうちでの開発環境で、NASの8000ポートにアクセスすればWebサービスの最新にアクセス出来るようにしております(次回)
TS-351(QNAP)ってNASですが、Dockerが動いています… だから、厳密にはDockerを使わない方法とは言い切れませんが、サーバが動いている環境はローカルと同じ状態に近いです
要するに!!!
GitLab-runnerが走っているサーバでGitで取ってきた内容をコピーします…
これなら現在動いているサーバでもGitLab-runnerインストールすれば、簡単にCDが可能という事になります
我が家では、開発用の TS-351(QNAP)と運用用のTS-351(QNAP)がありますので、それぞれ releaseブランチとmaster ブランチの最新情報を書き出しています。
masterで内容を反映して、確認後、releaseブランチにマージ… 確認… \(^O^)/
んで!
今回はその中でも、TS-351(QNAP)でのまずはrunnerの構築する方法をまとめます
第一章 それでも私は走り続ける
この章では、シンプルにQNAPのcontainer stationの使い方です。
知っている人は読み飛ばしてください。
ubuntu:latestを作りますと言う話です
まずは、container stationを立ち上げます(インストールされていない場合はインストールしてください)
と、シンプルにコンポーネントを作成します。パッケージはubuntu:latestを指定します
しばらくお待ちください…. って感じで作成までに時間がかかります
[作成]ボタンではなく[インストール]ボタンの場合はそのままです…
ポートフォワーディングを8000ポートで80ポートとします
※ 必須ではありません
[作成]を押下すると作成作業が開始されます
しばらく待ち、概要に移動すると作成されています。(試験ではubuntu-1ってミスったw)
[端末 >_ ]を押下して、コマンドを実行します….
/bin/bash/
シンプルですw
動きました!ぱちぱちぱちぱち!
第二章 決して望む物は望まれていない
第一章で作成したコンポーネントでの作業になります。
簡単に言うと、スクリプトを実行するんです!(ドーン!)
11/20深夜から11/21早朝まで作っては消して、作っては消して… をしすぎて、バカになりましたw
gitlabで管理していたのに、githubに上げましたw
https://github.com/wataru775/gitlab-runner
この中のfor_QNAPを使うとOKなんですが、簡単にメモります…
export DEBIAN_FRONTEND=noninteractive
export TZ=Asia/Tokyo
apt-get -y -qq update
apt-get -y -qq upgrade
apt-get install -y -qq git tzdata
どーーーん!
なぜか最後の 「apt-get install -y -qq git tzdata」まで行かないことがあるので注意なっ!
git clone https://github.com/wataru775/gitlab-runner.git
/bin/bash ./gitlab-runner/for_QNAP/laravel_make.sh
GitHubに公開しているリポジトリをクローンして、実行する
これで、gitlab-runnerはインストールされます
第三章 われわれの要求は必ずしも求められない
最後は、GitLabさんにrunnerを登録します
gitlab-runner register
実行すると、登録レジスタを起動します
Runtime platform arch=amd64 os=linux pid=19389 revision=ece86343 version=13.5.0
Running in system-mode.
Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/):
http://192.168.1.203:9080/
Please enter the gitlab-ci token for this runner:
buYy_yKNBnvsX_eUQqU7
Please enter the gitlab-ci description for this runner:
[c527cb5c7fef]: laravel
Please enter the gitlab-ci tags for this runner (comma separated):
Registering runner... succeeded runner=buYy_yKN
Please enter the executor: docker, docker-ssh, parallels, shell, virtualbox, docker+machine, docker-ssh+machine, custom, ssh, kubernetes:
shell
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!
設定している内容は…
Gitlabのページで指定プロジェクトの[ 設定 ] > [CI / CD] Runner
にあります!!
この設定を入れればOKだよ!
動くと…
CI/CDのジョブ一覧に成功が表示されます!
第四章
今回は、シンプルに、口が臭い! ではなく。QNAPの使い方と、簡単なGitLab-runnerの登録方法でした。
もし、接続がうまくいかない場合は… gitlab-runnerを再起動したりしてみてください。
次回は、近々にlaravelプロジェクトってCDします。
そこからスタートしましたが、それがキモですねw
あ、GitHubなので、一度cloneしたらpullで更新ですよ
以上!