nekop's blog

OpenShift / JBoss / WildFly / Infinispanの中の人 http://twitter.com/nekop

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にロードバランスされて面白いことになる。