OpenShiftにGogsをセットアップする
インターナルでWebhookが使えるGit hostでhttpしゃべるものが欲しかったのだけど、社内のGitがhttpsなのでフロントエンドでプロキシするか別のGit hostを、ということで気になっていたGogs試してみた。この人ボストンで学生やってるっぽいんだけどめちゃめちゃコード書いててすごい。
private docker registryの時と同じくRunAsAny設定が必要。
oc new-project gogs oc new-app gogs/gogs oc expose dc gogs --port=3000 --name=gogs-http oc expose se gogs-http
http://gogs-http.gogs.tkimura.shift
にアクセスするとセットアップ画面が出るので、httpのURLがデフォルトでlocalhost
になっているのをこのサーバに修正しておしまい。そのあとログイン画面に遷移するけど、最初に作ったユーザがadminになるので普通に登録してログインすればいい。tkimura.shift
は自分のDNSに設定しているオレオレOpenShiftドメイン名。
あとはぽちぽちリポジトリ作ってgit clone http://gogs-http.gogs.tkimura.shift/nekop/first.git
して動いたのでOK。
Gogsは3000と22の二つのポートがexposeされているので、3000のほうを別のServiceにしてRouteを作る。oc expose se gogs
とやってしまうとHTTPとSSHにロードバランスされて面白いことになる。