既存のデーターを移します
サーバー移転の大筋は別記事で、書きました。
が、Giteaのサーバーを移転するのを忘れていたので、作業を行いその過程を記述しておきます。1から立ち上げるのは、以前に記事を書きました。Giteaサーバーを移転ないし移動するのは、データベースを移動すれば良いだけで、WordPressのようにディレクトリ構造を移転する必要はありません。dbの移動は、移行元でdbをエクスポートして、移行先でインポートすればオッケーです。ユーザの登録だけコマンドラインからの作業が必要でした。
としましたけど、全くの嘘でした。見かけ上うごいているように見えますが、エラーがでて使えません。新規のGiteaのサーバーを立ち上げてから、”Migrate”するのが吉ですかね。
mysql -u root -p でpassword入力してから
GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'localhost' IDENTIFIED BY "StrOngPassw0rd";
FLUSH PRIVILEGES;
上記は db名 gitea user名 gitea パスワード StrOngPasswOrdの場合。
adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/git git
wget -O /tmp/gitea https://dl.gitea.com/gitea/1.26.0/gitea-1.26.0-linux-amd64
mv /tmp/gitea /usr/local/bin/gitea
chmod +x /usr/local/bin/gitea
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
vi /etc/systemd/system/gitea.service
systemctl enable gitea
systemctl start gitea
systemctl status gitea
上記でwgetしてくるgiteaのバージョンは最新のstableにしておくのが吉です。で、上記のgitea.serviceの内容は、以下のように。
[Unit]
Description=Gitea
After=syslog.target
After=network.target
Requires=mariadb.service
[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea
[Install]
WantedBy=multi-user.target
DBの移設以外に必要なものは、Giteaサーバーのバイナリの用意と、service スクリプトの用意、ユーザアカウントの用意等々です。それほど複雑ではないし、”正しい”順番で抜けなく実施すれば問題ありません。さて、上記の準備ができて、
root@ghost:~# systemctl status gitea
* gitea.service - Gitea
Loaded: loaded (/etc/systemd/system/gitea.service; enabled; preset: enabled)
Active: active (running) since Wed 2026-04-22 15:40:17 JST; 4 days ago
Invocation: ef9441949ce24fc79acdce0cd1147cf1
Main PID: 107631 (gitea)
Tasks: 18 (limit: 38101)
Memory: 100.6M (peak: 102.9M)
CPU: 9min 16.048s
CGroup: /system.slice/gitea.service
`-107631 /usr/local/bin/gitea web
とgiteaのstatus runningであれば、http://サーバーのlocalip:3000へアクセス。

この初期設定の画面が出ればおけ。
前の記事のapp.iniの修正を加えて、再度同じurlへアクセスすると、

これを公開サーバーにするためには、ポート3000へのフォワードが必要です。それはルーターの設定ですが、Giteaのベースurlも変更するのが吉です。
ちなみにlocalなgiteaサーバーからMigrateする場合は、app.iniに
[migrations]
ALLOW_LOCALNETWORKS = true
のセクションを追加しておく必要があります。ちまちまMigrate=移行するのも面倒なので、RRMを使って一気に移行するのが吉かもしれません。


コメント