[QNAP] GOGSインストール手順

2024/07/22

サーバー テクノロジー

t f B! P L
eyecatch NASを便利に使うために、昨日はQNAPが便利だという話をしたと思うが、今回はGITリポジトリサーバーを構築する手順を備忘録しておきます。 この備忘録は、将来現在使っているQNAP-NASが故障して、新しいものに交換した場合や、新機種が出て再構築する時に自分で見直すためのもので、 他の人に便利に利用してもらおうなんて、これっぽちも考えていない事をご理解ください。 (ウソです、QNAP使っている人はバンバンコピペしてこすり倒してください)

前提条件条件

今回使用するQNAPの機種は「TS-464」でHDD4枚構成のもの(2枚RAIDのものでも大丈夫だと思う) HDD(ストレージ)は10TB x4 + M.2-SSD 4TB x2というなんとも贅沢な容量を搭載している。 もちろん、Raid5 + 定期バックアップ・スナップショットを構築しているので、機器トラブルでもある程度は問題なし(と思われる) GITリポジトリサーバ―にするためには、ストレージの容量は大容量が必須なので、コストの許す限り大容量にしておいたほうがいいですからね。 OS(QTS)のバージョンは、2024年7月の辞典の最新バージョンです。

構築作業手順

1. Container Statinを立ち上げて、「アプリケーションタブ」に移動

2. 次のコードをコピペ

version: '3' services: gogs: image: gogs/gogs:latest ports: - "3000:3000" - "50022:22" volumes: - ./data:/data depends_on: - db restart: always db: image: mariadb:10 restart: always environment: - MYSQL_ROOT_PASSWORD=*パスワードを入力 - MYSQL_DATABASE=gogs - MYSQL_USER=gogs - MYSQL_PASSWORD=*パスワードを入力 volumes: - ./db/:/var/lib/mysql networks: app_net: driver: bridge ipam: driver: default config: - subnet: 192.168.1.0/24 「パスワードを入力」箇所は、自分でログインする用のパスワードを入力しておきましょう。 データベースはMariaDBを同時に起動するようにしています。

3. webブラウザでアクセス

http://※QNAPのIPアドレス:3000/
Gogsのインストール設定の変更点は、次とおりです。 データベースの種類 : Mysql ホスト : db:3306 パスワード : ※パスワード入力 ドメイン : ※QNAPのアドレス(IPやドメイン) SSHポート : 50022 アプリケーションのURL : http://※QNAPのアドレス(IPやドメイン):3000 URLのhttpは適宜httpsに置き換えてください。 上記の設定で登録できますが、「管理者アカウント」をセットしておくと、この後サクサク作業が進められます。 「Gogsをインストール」ボタンを押してエラーが出なければ、そのままログイン画面に遷移します。 ※問題が出る場合は自力で直すしかありません・・・

設定変更

ローカルパソコンから、SSHを使ってQNAPにログインして、次のコマンドで、設定ファイルを直接編集できます。 vi /share/Container/container-station-data/application/gogs/data/gogs/conf/app.ini 中は次のように書かれています。 BRAND_NAME = Gogs RUN_USER = git RUN_MODE = prod [database] TYPE = mysql HOST = db:3306 NAME = gogs SCHEMA = public USER = gogs PASSWORD = パスワード SSL_MODE = disable PATH = /app/gogs/data/gogs.db [repository] ROOT = /data/git/gogs-repositories DEFAULT_BRANCH = master [server] DOMAIN = ドメイン HTTP_PORT = 3000 EXTERNAL_URL = http://ドメイン:3000/ DISABLE_SSH = false SSH_PORT = 50022 START_SSH_SERVER = false OFFLINE_MODE = true [email] ENABLED = false [auth] REQUIRE_EMAIL_CONFIRMATION = false DISABLE_REGISTRATION = true ENABLE_REGISTRATION_CAPTCHA = false REQUIRE_SIGNIN_VIEW = true [user] ENABLE_EMAIL_NOTIFICATION = false [picture] DISABLE_GRAVATAR = true ENABLE_FEDERATED_AVATAR = false [session] PROVIDER = file [log] MODE = file LEVEL = Info ROOT_PATH = /app/gogs/log [security] INSTALL_LOCK = true SECRET_KEY = セキュリティキー(自動で登録されます) 内容については細かく説明しませんが、DEFAULT_BRANCHはmastermainにしておいたほうがよさそうです。

あとがき

仕事でGithubにprivate登録してあるリポジトリなどが、数十個あるのと、以前使っていたGitリポジトリサーバーに数百個のリポジトリデータが存在するので、それらを一括管理して、組織などでグルーピングして管理しようと思います。 wikiや共同開発、ホック機能なども使えるので、オートデプロイなども設定できるはずなので、仕事で便利に使えそうですね。 しかも、セキュリティは結構安心感があります。(QNAPがハッキングされない限り) さて、リポジトリのお引越しに膨大な時間がかかる事が想定されるので、ブログ書いてる場合じゃないってことで、今回の備忘録はここまで。 あ、ちなみに、QNAPで使えるGITリポジトリサーバーは、「GOGS」以外にも「GITEA」というのもあるので、好みに合わせてインストールするといいでしょう。

人気の投稿

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。

ブログ アーカイブ