win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

随笔2周前发布 王兵
31 0 0

一. docker安装

1. 开启hyper-v (确认是否开启最简单方式)

win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

2. 未开启操作如下

pushd "%~dp0"
dir /b %SystemRoot%servicingPackages*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%servicingPackages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL

  • 1
  • 2
  • 3
  • 4
  • 5

新建一个批处理文件,将以上代码复制进去,并保存为enableHyperV.bat文件。双击运行此文件,即可开启Hyper-V。 需要重启
注意:如果系统中已经安装了Hyper-V,则可以忽略此步骤。

3. 修改注册表,伪装专业版

以管理员身份打开cmd,执行如下

REG ADD “HKEY_LOCAL_MACHINEsoftwareMicrosoftWindows NTCurrentVersion” /v EditionId /T REG_EXPAND_SZ /d Professional /F

二. 安装Linux发行版

1.查看可用的版本wsl

wsl –list –online

请使用“wsl –install -d <分发>”安装。 例如:
NAME FRIENDLY NAME
Ubuntu Ubuntu
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
Ubuntu-18.04 Ubuntu 18.04 LTS
Ubuntu-20.04 Ubuntu 20.04 LTS
Ubuntu-22.04 Ubuntu 22.04 LTS
Ubuntu-24.04 Ubuntu 24.04 LTS
OracleLinux_7_9 Oracle Linux 7.9
OracleLinux_8_7 Oracle Linux 8.7
OracleLinux_9_1 Oracle Linux 9.1
openSUSE-Leap-15.6 openSUSE Leap 15.6
SUSE-Linux-Enterprise-15-SP5 SUSE Linux Enterprise 15 SP5
SUSE-Linux-Enterprise-15-SP6 SUSE Linux Enterprise 15 SP6
openSUSE-Tumbleweed openSUSE Tumbleweed
PS C:UsersAdministrator> wsl –install -d Ubuntu-18.04

2.WSL安装

手动安装
wsl –install Ubuntu-24.04
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
输入自定义用户名(除root和不要大写,root是根用户),然后按照提示输入密码,即安装上WSL

3. 启用

WSL安装成功后,Docker Desktop要想能用,还需要启用WSL,输入如下命令WSL安装成功后,Docker Desktop要想能用,还需要启用WSL,输入如下命令WSL安装成功后,Docker Desktop要想能用,还需要启用WSL,输入如下命令:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

4. 检查是否开启成功

右键管理员权限打开PowerShell,输入如下命令
Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

下载Linux发行版
https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-4—download-the-linux-kernel-update-package

参考链接

https://learn.microsoft.com/zh-cn/windows/wsl/install

三. 常用命令

1.查看已安装的 Linux 发行版

wsl -l -v
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

2.设置默认系统

wsl –set-default Ubuntu-22.04

3.启动 Linux 发行版

wsl -d Ubuntu-22.04

4.终止运行的系统

wsl -t Ubuntu-22.04

5.注销指定系统

wsl –unregister Ubuntu-22.04

6. 开始菜单可以使用

win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

7.其他命令,可节省空间

导出和导入 Linux 发行版(修改安装位置)
wsl –export Ubuntu-24.04 F:DockOsUbuntu2404ubuntu24.04.tar
wsl –unregister Ubuntu-24.04
wsl –import Ubuntu-24.04 F:DockOsUbuntu2404ubuntu24.04.tar
ubuntu2204.exe config –default-user root

8. 更改或重置密码

请打开 Linux 发行版并输入命令:passwd。 系统会要求你输入当前密码,然后要求输入新密码,之后再确认新密码。
如果忘记了 Linux 分发版的密码:

请打开 PowerShell,并使用以下命令进入默认 WSL 分发版的根目录:wsl -u root

如果需要在非默认分发版中更新忘记的密码,请使用命令:wsl -d Debian -u root,并将 Debian 替换为目标分发版的名称。

在 PowerShell 内的根级别打开 WSL 发行版后,可使用此命令更新密码:passwd ,其中 是发行版中帐户的用户名,而你忘记了它的密码。

系统将提示你输入新的 UNIX 密码,然后确认该密码。 在被告知密码已成功更新后,请使用以下命令在 PowerShell 内关闭 WSL:exit。

root 密码好像有长度校验,不能设置过短的密码。
列如:root123456

四. wsl安装的系统和vmware安装的系统没什么差别,可以把它理解成一个shell密码命令行工具,当然也可以配置ssh使用xsheel连接

1. 安装net工具

apt install net-tools
查看IP地址
ifconfig查看IP地址
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

2. 安装ssh服务,开启远程权限,shell登录

ssh服务安装
卸载ssh服务
apt remove openssh-server 
重装ssh服务
apt install openssh-server 
开启SSH服务
sudo service ssh start  
设置SSH服务在开机时自动启动
sudo systemctl enable ssh 

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
编辑/etc/ssh/sshd_config文件
vi /etc/ssh/sshd_config

修改ssh服务监听端口和监听地址
Port 22
#AddressFamily any
ListenAddress 0.0.0.0
ListenAddress ::Port 22
#AddressFamily any
ListenAddress 0.0.0.0
ListenAddress ::

#LoginGraceTime 2m
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

 # To disable tunneled clear text passwords, change to no here!
PasswordAuthentication yes
#PermitEmptyPasswords no

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

开放22端口,允许SSH远程登录
sudo service ssh restart

五. ssh常用命令

#### 远程连接
ssh root@192.168.1.100   # 连接远程服务器

#### 远程命令执行        
ssh root@192.168.1.100 "ls -l"  # 远程执行命令

#### 远程文件传输
scp /root/test.txt root@192.168.1.100:/root/test.txt  # 远程文件传输

#### 远程端口转发
ssh -L 8080:192.168.1.100:80 root@192.168.1.100  # 远程端口转发 8080 端口转发到 192.168.1.100 80 端口
#### 远程端口转发(动态端口)
ssh -D 8080 root@192.168.1.100  # 远程端口转发 8080 端口转发到 192.168.1.100 80 端口(动态端口)
#### 远程端口转发(动态端口)
ssh -N -f -L 8080:192.168.1.100:80 root@192.168.1.100  # 远程端口转发 8080 端口转发到 192.168.1.100 80 端口(动态端口)
#### 远程端口转发(动态端口)
### ubuntu常见命令
#### 查看系统信息   
uname -a    # 查看系统信息

#### 查看CPU信息            
cat /proc/cpuinfo    # 查看CPU信息
#### 查看内存信息                   
free -m    # 查看内存信息            
#### 查看磁盘信息                   
df -h    # 查看磁盘信息                         
#### 查看网络信息                       
ifconfig    # 查看网络信息          
#### 查看进程信息                       
ps -ef    # 查看进程信息        


#### 查看端口信息                       

netstat -anp    # 查看端口信息          

### 文件目录常用命令        

#### 切换目录           

cd /root    # 切换目录          

#### 查看当前目录下的文件           

ls -al    # 查看当前目录下的文件                

#### 创建目录           

mkdir /root/test    # 创建目录                  

#### 删除目录                       

rm -rf /root/test    # 删除目录             


#### 复制文件                               

cp /root/test.txt /root/test1.txt    # 复制文件          



#### 移动文件                                   

mv /root/test.txt /root/test1.txt    # 移动文件          


#### 查看文件内容                                           

cat /root/test.txt    # 查看文件内容          


#### 查看文件大小                                           

du -h /root/test.txt    # 查看文件大小          


#### 查看文件权限                                           

ls -l /root/test.txt    # 查看文件权限          


#### 查看文件类型                                           

file /root/test.txt    # 查看文件类型          


#### 查看文件内容(指定行数)                                           

head -n 10 /root/test.txt    # 查看文件内容(指定行数)          


#### 查看文件内容(倒序)                                           

tail -n 10 /root/test.txt    # 查看文件内容(倒序)          


#### 查看文件内容(搜索关键字)                                           

grep "关键字" /root/test.txt    # 查看文件内容(搜索关键字)            


#### 查看文件内容(统计关键字出现次数)                                           

grep -c "关键字" /root/test.txt    # 查看文件内容(统计关键字出现次数)          




#### 查看文件内容(统计关键字出现位置)                                           


grep -n "关键字" /root/test.txt    # 查看文件内容(统计关键字出现位置)          

 

#### 压缩文件                                           

tar -zcvf /root/test.tar.gz /root/test    # 压缩文件          

 
#### 解压文件                                           

tar -zxvf /root/test.tar.gz    # 解压文件          


### 文件操作命令

#### 显示当前目录下的文件
ls          

#### 显示当前目录下的文件(详细信息)            
ls -l          

创建文件
touch test.txt              

#### 显示文件内容                   

cat test.txt            

# 查找文件
find / -name "test.txt"
# 按文件名查找文件
find / -name "test.txt"
# 按文件类型查找文件  
find / -type f -name "*.txt"
# 按文件大小查找文件
find / -size +10M -name "test.txt"
# 按文件权限查找文件
find / -perm 777 -name "test.txt"
# 按文件属主查找文件
find / -user root -name "test.txt"
# 按文件属组查找文件
find / -group root -name "test.txt"
# 按文件修改时间查找文件
find / -mtime -1 -name "test.txt"
# 按文件创建时间查找文件
find / -ctime -1 -name "test.txt"
# 按文件更改时间查找文件
find / -mtime -1 -name "test.txt"
# 按文件内容查找文件  
find / -type f -name "*.txt" -exec grep "关键字" {} ;
# 按文件内容查找文件并显示行号
find / -type f -name "*.txt" -exec grep -n "关键字" {} ;
# 按文件内容查找文件并显示行号和文件名  
#### 远程连接
ssh root@192.168.1.100   # 连接远程服务器

#### 远程命令执行        
ssh root@192.168.1.100 "ls -l"  # 远程执行命令

#### 远程文件传输
scp /root/test.txt root@192.168.1.100:/root/test.txt  # 远程文件传输

#### 远程端口转发
ssh -L 8080:192.168.1.100:80 root@192.168.1.100  # 远程端口转发 8080 端口转发到 192.168.1.100 80 端口
#### 远程端口转发(动态端口)
ssh -D 8080 root@192.168.1.100  # 远程端口转发 8080 端口转发到 192.168.1.100 80 端口(动态端口)
#### 远程端口转发(动态端口)
ssh -N -f -L 8080:192.168.1.100:80 root@192.168.1.100  # 远程端口转发 8080 端口转发到 192.168.1.100 80 端口(动态端口)
#### 远程端口转发(动态端口)
### ubuntu常见命令
#### 查看系统信息   
uname -a    # 查看系统信息

#### 查看CPU信息            
cat /proc/cpuinfo    # 查看CPU信息
#### 查看内存信息                   
free -m    # 查看内存信息            
#### 查看磁盘信息                   
df -h    # 查看磁盘信息                         
#### 查看网络信息                       
ifconfig    # 查看网络信息          
#### 查看进程信息                       
ps -ef    # 查看进程信息        


#### 查看端口信息                       

netstat -anp    # 查看端口信息          

### 文件目录常用命令        

#### 切换目录           

cd /root    # 切换目录          

#### 查看当前目录下的文件           

ls -al    # 查看当前目录下的文件                

#### 创建目录           

mkdir /root/test    # 创建目录                  

#### 删除目录                       

rm -rf /root/test    # 删除目录             


#### 复制文件                               

cp /root/test.txt /root/test1.txt    # 复制文件          



#### 移动文件                                   

mv /root/test.txt /root/test1.txt    # 移动文件          


#### 查看文件内容                                           

cat /root/test.txt    # 查看文件内容          


#### 查看文件大小                                           

du -h /root/test.txt    # 查看文件大小          


#### 查看文件权限                                           

ls -l /root/test.txt    # 查看文件权限          


#### 查看文件类型                                           

file /root/test.txt    # 查看文件类型          


#### 查看文件内容(指定行数)                                           

head -n 10 /root/test.txt    # 查看文件内容(指定行数)          


#### 查看文件内容(倒序)                                           

tail -n 10 /root/test.txt    # 查看文件内容(倒序)          


#### 查看文件内容(搜索关键字)                                           

grep "关键字" /root/test.txt    # 查看文件内容(搜索关键字)            


#### 查看文件内容(统计关键字出现次数)                                           

grep -c "关键字" /root/test.txt    # 查看文件内容(统计关键字出现次数)          




#### 查看文件内容(统计关键字出现位置)                                           


grep -n "关键字" /root/test.txt    # 查看文件内容(统计关键字出现位置)          

 

#### 压缩文件                                           

tar -zcvf /root/test.tar.gz /root/test    # 压缩文件          

 
#### 解压文件                                           

tar -zxvf /root/test.tar.gz    # 解压文件          


### 文件操作命令

#### 显示当前目录下的文件
ls          

#### 显示当前目录下的文件(详细信息)            
ls -l          

创建文件
touch test.txt              

#### 显示文件内容                   

cat test.txt            

# 查找文件
find / -name "test.txt"
# 按文件名查找文件
find / -name "test.txt"
# 按文件类型查找文件  
find / -type f -name "*.txt"
# 按文件大小查找文件
find / -size +10M -name "test.txt"
# 按文件权限查找文件
find / -perm 777 -name "test.txt"
# 按文件属主查找文件
find / -user root -name "test.txt"
# 按文件属组查找文件
find / -group root -name "test.txt"
# 按文件修改时间查找文件
find / -mtime -1 -name "test.txt"
# 按文件创建时间查找文件
find / -ctime -1 -name "test.txt"
# 按文件更改时间查找文件
find / -mtime -1 -name "test.txt"
# 按文件内容查找文件  
find / -type f -name "*.txt" -exec grep "关键字" {} ;
# 按文件内容查找文件并显示行号
find / -type f -name "*.txt" -exec grep -n "关键字" {} ;
# 按文件内容查找文件并显示行号和文件名  

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309
  • 310
  • 311
  • 312
  • 313
  • 314
  • 315
  • 316
  • 317
  • 318
  • 319
  • 320
  • 321
  • 322
  • 323
  • 324
  • 325
  • 326
  • 327
  • 328
  • 329
  • 330
  • 331

六.docker desktop安装

选择Docker Engine,在其中输入(这里使用的是163的源,如果想要使用其他源可以自行设置,github上有个项目:docker_mirror可以自动检测在你的网络环境下那个源是最快的)

win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案


{
"registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://registry.docker-cn.com",
    "https://reg-mirror.qiniu.com"
  ]
} 
{
"registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://registry.docker-cn.com",
    "https://reg-mirror.qiniu.com"
  ]
} 

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

七. doocker 常见命令

# 启动docker
sudo service docker start
# 重启docker
sudo service docker restart
# 停止docker
sudo service docker stop


获取当时所有镜像(docker images)
docker image ls
# 或者
docker images 
拉取镜像(docker pull) 
# 官方镜像
docker image pull 镜像名称 
# 或简写为 
docker pull 镜像名称
# 比如
docker pull ubuntu
docker pull ubuntu:16.04

# 个人镜像
docker pull 仓库名称/镜像名称
docker pull xunmi/django

# 第三方仓库拉去
docker pull 第三方仓库地址/仓库名称/镜像名称
docker pull hub.c.163.com/library/mysql:latest
(默认仓库名为library,所有从官方获取镜像相当于`sudo docker image pull library/镜像名称`) 


删除镜像(docker rmi)
docker image rm 镜像名或镜像ID 或 docker rmi 镜像名或镜像ID
docker image rm hello-world
docker rmi 9e64176cd8a2

docker rm: 删除一个或多个 容器
docker rmi: 删除一个或多个 镜像
docker prune: 用来删除不再使用的 docker 对象

docker run [可选参数] 镜像名 [向启动容器中传入的命令]

# 启动一个容器          
docker run -it --name my-ubuntu ubuntu:16.04 /bin/bash          
# -it: 让容器的标准输入、输出和错误输出保持打开状态,即可以进行交互式操作。             
# --name: 为容器指定一个名称,方便后续操作。             
# ubuntu:16.04: 指定要启动的镜像,这里是Ubuntu 16.04。             
# /bin/bash: 容器启动后默认执行的命令,这里是bash。             

# 启动一个后台运行的容器
docker run -d --name my-ubuntu-daemon ubuntu:16.04 /bin/bash


# 停止一个容器          
docker stop 容器名或容器ID              
# 停止my-ubuntu容器                           
docker stop my-ubuntu          
# 停止my-ubuntu-daemon容器                                   
docker stop my-ubuntu-daemon          
 
docker search 关键字
#下载影像,镜像位置填入上面搜索出来的地址
docker pull 影像
#创建启动容器,等同于先执行docker create命令,再执行docker start命令
docker run
# 启动容器
docker start 容器id   
# 重启容器
docker restart 容器id 
# 停止当前正在运行的容器
docker stop 容器id    
# 强制停止当前容器
docker kill 容器id   
#查看容器 
docker ps 
#进入容器
docker exec -it 容器id  

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77

八.此处我展示使用docker desktop展示(安装gitlab为例)

win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

安装的gitlab 查看初始密码

cat /etc/gitlab/initial_root_password

grep ‘Password:’ /opt/gitlab/config/initial_root_password

或者直接在volume中查看即可
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

创建ssl证书目录

[root@cloud ~]# mkdir /opt/gitlab/config/ssl/
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

开启https支持,新版本的gitlab必须开启https支持,否则无法clone代码

win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

编辑gitlab.rb文件

sudo vi /etc/gitlab/gitlab.rb

找到并修改以下内容 (如果是docker desktop安装的gitlab,直接在desktop的volume中修改gitlab.rb文件即可,特别方便,常用的配置文件均在里面)

external_url ‘https://192.168.134.1’
nginx[‘redirect_http_to_https’] = true
nginx[‘ssl_certificate’] = “/etc/gitlab/gitlab.crt”
nginx[‘ssl_certificate_key’] = “/etc/gitlab/gitlab.key”

配置完成后一定重启当前的container

九. gitlab使用

配置https后使用对应443端口访问
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

注意: 配置了端口的一定使用对应端口访问
比如:https://192.168.134.1:9443
git config –global user.name “Your Name”
git config –global user.email “your.email@example.com”

验证配置是否生效:
在终端执行命令git config –list即可验证。

SSH密钥生成:
在本地终端运行以下命令:

ssh-keygen -t rsa -b 4096 -C “manixchensunshine@163.com”

假设我有github.com 、gitlab.com 和 bitbucket.org三个云端的账号,各自的注册邮箱和用户名不同。

建议:linux 或 mac 用户推荐在 ~/.ssh 路径下运行命令行,Windows用户推荐在“ C:Users用户名.ssh ”目录下运行命令行

说明:

-t rsa 表示加密方式

-C 表示注册不同云端仓库时所用的邮箱

-f 表示自定义生成秘钥的名称

#————————————–

生成 github.com 公私钥对

ssh-keygen -t rsa -C “manixchen@gmail.com” -f github

生成 gitlab.com 公私钥对

ssh-keygen -t rsa -C “manixchensun@gmail.com” -f gitlab

说明:

-t rsa 表示加密方式

-C 表示注册不同云端仓库时所用的邮箱

-f 表示自定义生成秘钥的名称

#————————————–

生成 github.com 公私钥对

ssh-keygen -t rsa -C “manixchen@gmail.com” -f github

生成 gitlab.com 公私钥对

ssh-keygen -t rsa -C “manixchensun@163.com” -f gitlab

在安装了git的机器上,关闭ssl验证,不然的话可能没法clone代码

export GIT_SSL_NO_VERIFY=true
git config –global http.sslVerify “false”

比较重要

//取消http代理(尝试作用不大)只需执行上面两行命令后,就可以clone代码了。
git config –global –unset http.proxy
//取消https代理
git config –global –unset https.proxy
https://192.168.134.1:9443/webjsj/reactspark.git

注意:下面提示:::如果是使用https协议,则需要关闭ssl验证。

$ git clone https://192.168.134.1:9443/root/reactspark.git
Cloning into 'reactspark'...
fatal: unable to access 'https://192.168.134.1:9443/root/reactspark.git/': SSL certificate problem: self-signed certificate
$ git clone https://192.168.134.1:9443/root/reactspark.git
Cloning into 'reactspark'...
fatal: unable to access 'https://192.168.134.1:9443/root/reactspark.git/': SSL certificate problem: self-signed certificate

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

… 注意,由于忽略了对HTTPS证书的验证,可能会存在安全风险,请谨慎使用 …

win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案
win10 wsl,docker desktop ,ssh,ssl,gitLab安装完整方案

配置完成后根据仓库提示,可以关联项目到gitlab上,然后就可以进行代码的管理了。 如果是初始化项目名直接clone即可

查看现有远程仓库的信息(git remote -v);
删除现有的远程仓库信息(git remote rm origin);
建立新的远程仓库地址(git remote add origin + 新的远程仓库地址);

完整的 wsl,docker desktop ,ssh,ssl,gitLa,安装使用流程

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...