2月 2, 2026ガイド
VPSでプライベートGitサーバーを設定する方法
VPSで独自のプライベートGitサーバーを設定する完全ガイド。GitLab、Gitea、またはベアリポジトリを使用して、完全な制御とプライバシーでGitリポジトリをホストする方法を学びます。

独自のGitサーバーをホストすると、コードリポジトリを完全に制御でき、プライバシーを確保し、サードパーティサービスへの依存を避けることができます。シンプルなベアリポジトリまたはフル機能のGitホスティングプラットフォームが必要かどうかにかかわらず、このガイドでは、VPSでプライベートGitサーバーを設定するための複数のオプションについて説明します。
独自のGitサーバーをホストする理由
- 完全なプライバシー:コードはサーバー上に残ります
- ベンダーロックインなし:リポジトリの完全な制御
- カスタマイズ:正確に希望どおりに設定
- コスト効率:無制限のリポジトリ用に1つのサーバー
- コンプライアンス:データレジデンシー要件を満たす
- 学習:Gitサーバーの内部を理解する
オプション1:GitLab(フル機能)
GitLabは完全なDevOpsプラットフォームを提供します:
bash
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash
apt install gitlab-ce
gitlab-ctl reconfigure
# http://your-server-ipでGitLabにアクセス
# デフォルトのユーザー名:root
# 初回ログイン時にパスワードを設定オプション2:Gitea(軽量)
Giteaは軽量のセルフホスト型Gitサービスです:
bash
wget -O gitea https://dl.gitea.io/gitea/1.21.0/gitea-1.21.0-linux-amd64
chmod +x gitea
mv gitea /usr/local/bin/
# systemdサービスを作成
nano /etc/systemd/system/gitea.service
# Giteaを設定して起動
systemctl enable gitea
systemctl start giteaオプション3:ベアGitリポジトリ(シンプル)
Webインターフェースなしの基本的なGitホスティング用:
bash
mkdir -p /srv/git/myproject.git
cd /srv/git/myproject.git
git --bare init
# 適切な権限を設定
chown -R git:git /srv/git
chmod -R 755 /srv/git
# クライアントからクローン:
git clone git@your-server:/srv/git/myproject.gitSSHアクセス設定
安全なGitアクセス用にSSHを設定:
bash
adduser git
su - git
mkdir .ssh
chmod 700 .ssh
nano .ssh/authorized_keys
# 開発者の公開鍵を追加
chmod 600 .ssh/authorized_keys
# 接続をテスト:
ssh git@your-serverセキュリティのベストプラクティス
- パスワードの代わりにSSHキーを使用
- 二要素認証を有効化(GitLab/Gitea)
- リポジトリの定期的なバックアップ
- Gitサーバーソフトウェアを最新の状態に保つ
- ファイアウォールを設定してアクセスを制限
- WebインターフェースにSSL/TLSを使用
- アクセス制御と権限を実装
- ログを監視して不審な活動を確認
バックアップ戦略
定期的なバックアップが不可欠です:
bash
#!/bin/bash
# Gitリポジトリバックアップスクリプト
BACKUP_DIR="/backup/git"
REPO_DIR="/srv/git"
DATE=$(date +%Y%m%d)
tar -czf $BACKUP_DIR/git-backup-$DATE.tar.gz $REPO_DIR
# 最後の30日間を保持
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete