树莓派搭建Git服务器

参考链接
https://blog.csdn.net/zhuo_lee_new/article/details/108052165
https://segmentfault.com/q/1010000008845382/a-1020000008845899
https://blog.csdn.net/sirobot/article/details/105538185

准备mysql服务器

创建gogs数据库,排序规则选择utf8_general_ci(我默认字符集也好使)

安装gogs

docker pull gogs/gogs-rpi
docker run -it --name gogs --link mariadb:db -p 3000:3000 -p 3022:22 gogs/gogs-rpi
mariadb为我的mysql容器的名字

配置gogs

在浏览器打开 树莓派ip:3000
在树莓派或者远程机器上打开浏览器,输入http://树莓派ip:3000,首次Gogs web页面,就会看到设置向导。

  • 进行数据库配置:
    • 数据库类型:mysql
    • 数据库主机:db:3306,创建容器时,指定了db linkmysql上,所以填写db加端口即可。
    • 数据库用户:root
    • 数据库用户密码:root,创建mssyq容器时指定了root密码为root
    • 数据库名称:gogs
  • 应用基本设置:
    • 域名:树莓派IP,否则每次都需要把localhost变成树莓派IP
    • SSH端口号:22
    • HTTP端口号:3000
    • 应用URL:http://树莓派ip:3000
    • 日志路径:/app/gogs/log

使用

添加ssh公钥

在登陆后增加公钥
image

创建仓库

获取仓库链接

image
image

在本地添加此远程仓库

从命令行创建一个新的仓库

touch README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin http://192.168.176.5:3000/rogunt/TEST.git
git push -u origin master

从命令行推送已经创建的仓库

git remote add origin http://192.168.176.5:3000/rogunt/TEST.git
git push -u origin master

192.168.176.5为我的树莓派IP,3000为容器暴露给外部的端口,映射容器内部3000端口。

使用ssh方式添加仓库

git remote add origin ssh://git@192.168.176.5:3022/rogunt/TEST.git
3022为容器暴露给外部的端口,映射内部22端口,192.168.176.5为我的树莓派IP

注意:网页中给的ssh链接不好使,请使用上面的链接,clone时也要使用上链接。

原因为,git@192.168.176.5:rogunt/QTLearn.git没有给定ssh端口,所以默认为22,由于git服务器是在容器中运行,ssh端口应为容器暴露给外部的3022,所以在连接中应该给定ssh端口。
如果你在添加远程仓库后提示你登陆,证明你连接到了你宿主机(树莓派)的ssh端口。
另,有宿主机与容器共享22端口方法,不过我没尝试,有兴趣的可以去试试:https://blog.csdn.net/u013710784/article/details/78778044

posted @ 2021-11-02 13:46  Rogunt  阅读(362)  评论(0编辑  收藏  举报