せっかくmariadb-serverも入れたので、Gitea入れてみましょうかね。
公式サイトでユーザ登録できて試用できますが、作成できるレポジトリが5個しかなく、実用に耐えられませんから、自前サーバ上に構築しましょう。公式サイトのbinary installに従って入れてみます。サイトは、gitea.comです。ここではGiteaサービスを提供するものをGiteaサーバーと呼びます。
いつものように、apt install -y giteaで入ってくれたら楽なんですがね。それはできない相談なんで、binary installにトライします。
ここ(公式)を参考にします。まずダウンロード、今日現在の最新バージョンは1.24.6です。
wget -O gitea https://dl.gitea.com/gitea/1.24.6/gitea-1.24.6-linux-amd64
chmod +x gitea
root@ghost:~# wget -O gitea https://dl.gitea.com/gitea/1.24.6/gitea-1.24.6-linux-amd64
--2025-09-19 14:02:40-- https://dl.gitea.com/gitea/1.24.6/gitea-1.24.6-linux-amd64
Resolving dl.gitea.com (dl.gitea.com)... 3.165.11.45, 3.165.11.58, 3.165.11.51, ...
Connecting to dl.gitea.com (dl.gitea.com)|3.165.11.45|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 113164416 (108M) [binary/octet-stream]
Saving to: 'gitea'
gitea 100%[=========================================================>] 107.92M 32.2MB/s in 3.5s
2025-09-19 14:02:43 (31.1 MB/s) - 'gitea' saved [113164416/113164416]
root@ghost:~# chmod +x gitea
gitのインストールを確認。インストールされていなければインストール
root@ghost:~# git --version
-bash: git: command not found
root@ghost:~# apt install git
Installing:
git
Installing dependencies:
git-man libcurl3t64-gnutls liberror-perl libngtcp2-16 libngtcp2-crypto-gnutls8 patch
Suggested packages:
git-doc git-email git-gui gitk gitweb git-cvs git-mediawiki git-svn ed diffutils-doc
Summary:
Upgrading: 0, Installing: 7, Removing: 0, Not Upgrading: 0
Download size: 11.8 MB
Space needed: 54.4 MB / 929 GB available
Continue? [Y/n] y
git ユーザーを登録
root@ghost:~# adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/git git
root@ghost:~# mkdir -p /var/lib/gitea/{custom,data,log}
chown -R git:git /var/lib/gitea/
chmod -R 750 /var/lib/gitea/
mkdir /etc/gitea
chown root:git /etc/gitea
chmod 770 /etc/gitea
root@ghost:~# export GITEA_WORK_DIR=/var/lib/gitea/
root@ghost:~# cp gitea /usr/local/bin/gitea
Creating a service file to start Gitea automaticallyを採ります。動いている例を示します。
vi /etc/systemd/system/gitea.service
として、下記に内容のファイルを作ります。
[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target
After=mysqld.service
#After=postgresql.service
#After=memcached.service
#After=redis.service
[Service]
# Modify these two values and uncomment them if you have
# repos with lots of files and get an HTTP error 500 because
# of that
###
#LimitMEMLOCK=infinity
#LimitNOFILE=65535
RestartSec=2s
Type=simple
User=gitea
Group=gitea
WorkingDirectory=/home/gitea
ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
Restart=always
Environment=USER=gitea HOME=/home/gitea
[Install]
WantedBy=multi-user.target
ここで一旦gitea用のdbを作っておきましょう。キーは、databaseの名前、ユーザの名前、ユーザーのパスワードです。
phpmyadminからも作れますけど、まずphpmyadminへ、

ログインしたら、

好きな名前で”データベースを作成”します。

”権限”をクリック。ユーザを新規作成します。

一番下の実行をクリック。(画面外です)

権限で全てチェックするをクリック、で実行。コマンドラインからならば、
mysql -u root -p
CREATE USER 'gitea'@'%' IDENTIFIED BY 'gitea';
CREATE DATABASE giteadb CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_bin';
GRANT ALL PRIVILEGES ON giteadb.* TO 'gitea';
FLUSH PRIVILEGES;
上記で、giteadbというデータベースを作成して、ユーザgiteaに全ての権限をあたえて、そのパスワードをgiteaとしてます。どちらの方法でdbができたら、
systemctl enable gitea
systemctl start gitea
状態を
systemctl status gitea
で確認。この場合だと、
http://192.168.0.240:3000
へアクセスして初期設定をします。

データベースのタイプ、ユーザ名、パスワード、データベース名を入れて進めます。

最初に登録したユーザが管理者になります。ログインするとこれでおけです。細かい設定や使い方は、次以降の記事で。
コメント