1. 获取Linux
镜像[注1,注2]
1 | # 获取最新版 ubuntu |
2. 容器内安装与配置git
2.1. 安装 git
[注3]
1 | # 修改 ubantu 用户密码 |
2.2. 创建一个 git
用户,用来运行 git
服务
1 | # 用户名是 git ,设置密码(我这里是gaopeng),按照提示 enter |
2.3. 创建证书登录[注4]
1 | # win10用户获取公钥,按照提示 enter,默认保存在 C:\Users\用户名\.ssh |
2.4. 初始化Git仓库
先选定一个目录作为Git仓库,假定是/srv/sample.git
,在/srv
目录下输入命令,就会创建一个裸仓库,裸仓库没有工作区,然后,把owner改为git
1 | # 创建一个裸仓库 |
2.5. 禁用shell登录
出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd
文件完成
1 | # 在 /etc/passwd 找到类似下面的一行 |
3. 使用 git
[注5]
3.1. 克隆远程仓库
1 | $ git clone git@我的ip:/srv/sample.git |
注
报错
no matching manifest for windows/amd64 10.0.18362 in the manifest list entries
,解决方法,设置daemon.json
的experimental:true
报错
1
C:\Program Files\Docker\Docker\resources\bin\docker.exe: Error response from daemon: failed to start service utility VM (createreadwrite): hcsshim::CreateComputeSystem fcf43c4f386fb27bf9f5ca808e6bd6f0b63b8b0136ca4650ca39575d0db493e2_svm: The virtual machine could not be started because a required feature is not installed.
需要开启 windows 虚拟化
报错
bash: sudo: command not found
1
2apt-get update
apt-get install sudo如果希望ssh公钥生效需满足至少下面两个条件:
1
21) .ssh目录的权限必须是700
2) .ssh/authorized_keys文件权限必须是600报错
1
2
3
4
5ssh: Could not resolve hostname server: Name or service not known
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.参见“给docker容器分配静态ip地址”