Soft-Serve小巧强大-轻量级Git服务

文章目录

  • 前言
  • 一、Soft-Serve
    • 官方解释:
    • 我的要求
  • 二、使用步骤
    • 我的环境
    • 公钥、私钥生成
    • 安装镜像
      • 参数解释:
    • 配置
      • config.yaml
      • config
  • 实操
    • 创建用户及绑定公钥
    • 创建代码仓库及添加合作者
    • 之后就是 git 基本操作了
  • 总结


前言

用过 Gitlab, 也挺好用。
遇到几个问题:

  1. Gitlab 很消耗服务器性能,个人电脑很吃不消, 一般安装在专门服务器。
  2. 想在自己的工作电脑搭一个 git 服务, 以便局域网内几个人提交、合并代码足矣。

Soft-Serve小巧强大-轻量级Git服务_第1张图片

一、Soft-Serve

项目: https://github.com/charmbracelet/soft-serve

官方解释:

  • 一个美味的、可自托管的命令行 Git 服务器。
  • 通过 SSH 轻松导航 TUI
  • 通过 SSH、HTTP 或 Git 协议克隆存储库
  • Git LFS 支持 HTTP 和 SSH 后端
  • 使用 SSH 管理存储库
  • 使用 SSH 按需创建存储库或git push
  • 使用可通过 SSH 访问的 UI 浏览存储库、文件和提交
  • 通过 SSH 打印文件,带或不带语法突出显示和行号
  • 轻松访问控制
  • 使用公钥进行 SSH 身份验证
  • 允许/禁止匿名访问
  • 使用 SSH 公钥添加协作者
  • 回购可以是公共的或私人的
  • 用户访问令牌

我的要求

能完成基本的git 操作

二、使用步骤

官方提供了 linux, macOS , windows ,docker

我的环境

windows
docker desktop

公钥、私钥生成

在此不累述

安装镜像

docker run --name=soft-serve -e SOFT_SERVE_INITIAL_ADMIN_KEYS=/soft-serve/ssh/id_rsa46.pub --volume D://pddyjc_data/soft_server_data:/soft-serve --publish 23231:23231 --publish 23232:23232 --publish 23233:23233 --publish 9418:9418 --restart unless-stopped charmcli/soft-serve:latest

参数解释:

SOFT_SERVE_INITIAL_ADMIN_KEYS :
配置管理员的公钥, 添加在这个的公钥,视为拥有所有权限的用户。 我肯定把我自己的公钥加进去了^ – ^

–volume D://pddyjc_data/soft_server_data:/soft-serve :
挂载本地文件目录到/soft-serve, soft-serve目录是应用默认数据目录,用本地目录挂载应该是为了方便在本地管理文件。

配置

config.yaml

位置: 在部署 soft-serve 的电脑

以上步骤如果成功的话会在 D://pddyjc_data/soft_server_data 生成一个配置文件 : config.yaml

有两项地方可以配置(不配置是否影响我的基本使用我不了解,没验证), 这个配置具体在哪步起作用我不是很清楚,(反正我先填了再说)

其它参数没改
Soft-Serve小巧强大-轻量级Git服务_第2张图片

config

位置: 在需要访问 soft-serve 的电脑
配置 ssh 的私钥
目录 C:\Users\Administrator.ssh 里面的 config
Host : 就是部署 soft-serve 的电脑IP
配好了,之后访问 soft-serve 就不用输入密钥了,(因为密钥一大串,谁看都得晕)
Soft-Serve小巧强大-轻量级Git服务_第3张图片

实操

更多详情参阅官文

创建用户及绑定公钥

创建用户 beatrice
localhost : 改成 soft-serve 的IP, 下同。

ssh -p 23231 localhost user create beatrice

给 beatrice 绑定公钥 AAAAB3Nz… (注! 这个公钥和上面配置在 config 的私钥是成双成对的)

ssh -p 23231 localhost user add-pubkey beatrice ssh-rsa AAAAB3Nz...

创建代码仓库及添加合作者

创建仓库名为 icecream

ssh -p 23231 localhost repo create icecream

添加合作者 beatrice

ssh -p 23231 localhost repo icecream add soft-serve beatrice

之后就是 git 基本操作了

clone

git clone ssh://localhost:23231/icecream

添加 remote

git remote add origin ssh://localhost:23231/icecream

等等。。。。。。。。

和以前的区别 就是 http 换成了 ssh

总结

安装比较简单, 初次运行docker 一直失败, 调了好久。好像是加上 SOFT_SERVE_INITIAL_ADMIN_KEYS 就好了。
没有界面操作, 命令经常忘记,我是把教程下载下来, 每次要建库、用户再打开查阅。

你可能感兴趣的:(笔记,git,轻量级git,git服务,soft-serve)