首页 > 编程知识 正文

docker私有仓库搭建,git仓库搭建

时间:2023-05-03 17:11:13 阅读:142449 作者:3561

前言:代码平台安全吗? 看这个新闻:

最近代码管理平台的代码泄露火了,经理马上让我们做好准备,把开源的托管在中国的项目带到当地。 哈哈,其实项目掌握在自己手里确实是安全的,但还是做当地的仓库制约太大了。 于是,决定在自己的服务器上建设git仓库。 (多少心里的安全得到了保证

总的来说就是如何项目不开源?那就是搭建自己的git服务器

开整:一、安装参考git【我们的服务器是CentOS7】。

1 .在服务器上安装千兆位

sudo apt-getinstallgit (适用于debian系列的linux系统。 例如,安装Ubuntu、deb包的命令是“dpkg -参数”。 )

或:

yuminstallgit (适用于red hat系列的linux系统。 例如,安装Centos、rpm软件包的命令是“rpm -参数”。 )

二.创建git用户1 .创建git用户: (用于运行git服务)

审计工具

2 .设置密码:(尽可能短且不丢失复杂性) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )。

密码构件

3 .切换为git用户

su命令用于更改为其他用户的id,必须输入非root用户的密码。

苏格托

三.初始化公库1 .确定仓库位置

在此选择名为/home/git/warehouse的仓库执行。

sudogitinit---- bareware house.git

此时warehouse.git是一个裸区,不工作,作纯粹的代码共享,用户也不鞥更改仓库的工作区

2 .设置公钥

2.1生成公钥

缺省情况下,SSH公钥存储在帐户主目录下的~/.ssh目录中。 请确认以下内容。

cd ~/.ssh

如果没有xxx.ras或xxx.pub文件,请生成以下文件:

ssh-keygen -t rsa

此处生成的. pub文件的内容是公钥。

选择密钥的保存位置并显示密钥密码。 不设定也没关系。 按enter键退出

显示键命令:

$ cat ~/.ssh/id_rsa.pub

2.2设置密钥

切换为git用户:

苏格托

打开git位置:

cd /home/git

ls -a

首先确认是否有ssh密钥。 如果存在. ssh文件夹,请转至以检查是否存在authorized_keys文件,否则为

创建. ssh文件夹

mkdir .ssh

创建authorized_keys文件:

touchauthorized_keys

编辑authorized_keys文件,并将生成的公钥粘贴到该文件中

项目一定有多个开发者。 将所有git帐户的密钥诸葛添加到authorized_keys末尾即可。

四.禁用shell登录的步骤是使用git用户不使用普通bash

vim /etc/passwd

在最后一行可以看到类似的东西:

改为:

尝试使用git用户登录时,报告了错误:

五、远程仓库权限问题列入仓库目录执行。

chown-rgit : git warehouse.git (warehouse是自己命名的仓库名称) )。

这样就完成了服务器的git仓库。 接下来进行项目迁移

六.数据仓库迁移以上warehouse.git是我自制的空库

因为已经有在使用的仓库,所以将项目转移到新仓库

1 .将当地仓库的项目改为净仓库:

例如(我的项目名为mySpider ) :

git clone-- baremyspidermyspider.git

2 .将纯仓库放在git服务器上:

scp-rmy spider.git username @ 139.196.152.104:/home/git /

3.j继续进入本地仓库的项目内,查看当前项目的远程仓库:

例如(我的项目名为mySpider ) :

cdmySpider

git remote - v

4 .删除远程仓库:

git远程RM origin

5 .添加远程仓库

gitremoteaddorigingit @ 139.196.152.104:/home/git/my spider.git

6 .设置本地分支相关的远程分支:

git push---set-upstreamoriginmaster

七、最终仓库建设完成,数据也随之转移,最终克隆仓库项目。

git clone username@仓库地址:/项目. git

克隆项目后,修改并提交: git push

发生错误:

远程:错误: insufficientpermissionforaddinganobjecttorepositorydatabase./objects远程3360

远程:错误:权限不足,无法将对象添加到存储库数据库。 /目标远程:

解决方案:

1、修改仓库目录的用户为root,用户组为root

创建chown -R仓库时创建的用户名:所属组(云服务器用户名)/home/git

2、将仓库目录修改为可写权限

chmod -R 777/tmp (所有用户都具有读写权限) ) )。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。