Edited at

GithubやGitlabのアカウント名はハイフンで終わってはいけない

大半の方は関係がない話になりますが、GithubやGitlabのアカウント名のお話です。タイトルの通りアカウント名がハイフンで終わる、例えば「ko-he-」というアカウントの場合、いろいろと不都合が出るのでやめましょうという内容です。


不都合その1:GithubでGithub Pagesを作る場合(多分Gitlabも)

Githubには静的なサイトを公開できるGithub Pagesという機能があります。この機能を


  • ユーザー名: ko-he-

  • リポジトリ名: testgithubpage

のリポジトリで使用するとhttps://ko-he-.github.io/testgithubpage/というURLで静的なサイトを公開できます。

しかしながらこのページにアクセスするとFirefoxからのアクセスでは

のように、「潜在的なセキュリティリスクあり」となってしまいます。


不都合その2:GitlabのDockerレジストリを使用する場合

GitlabはリポジトリのDockerレジストリが付いています。特にプライベートリポジトリでの開発の時はDocker Hubで公開するわけにはいかないためとても重宝するのですが、これを「ko-」というアカウントで利用すると、リポジトリからレジストリの画面に移動するときに

のようにステータスコード500が返ってきて利用できません。


解決策と原因

解決策は基本的にはユーザ名を変更するしかありません。Github、Gitlabそれぞれ

から変更できます。ただし、ユーザ名を変更する場合、リポジトリ名も変更されてしまうので注意が必要です。

それ以外であれば、適当なグループを作成して、その中でプロジェクトを作成し開発するという手もあります。

原因ははっきりとはわかりませんでしたが、不都合その1:GithubでGithub Pagesを作る場合の時に

のように無効な証明書と判断されてしまっていることが怪しそうです。

もう少し調べるとドメイン名のルールでは「ラベルの先頭と末尾の文字をハイフンとするのは不可」となっているため今回のko-he-.github.ioはルール違反ということになります。

ということで、ここら辺が怪しいのですが、GitlabのDockerレジストリの場合とは直接的な関係はなさそうであり、結局原因ははっきりしませんでした。


まとめ

アカウント名が「ko-he-」のように最後がハイフンだと起こる不具合を紹介しました。

ただし、Githubに関しては以前は「ko-he-」といったアカウントを作ることができたのですが、現在ではGithubではユーザ名にバリデーションをかけるようになっていて「ko-he-」のようなアカウントは作成できなくなっています。Gitlabに関してはこの記事執筆時点では作成可能だったので気を付けましょう。