介绍
一直以来,Windows 搭建 gitlab 比较繁琐,直到出现 Docker Desktop,可以利用 docker 在 Windows 搭建 gitlab。但通过这种方式搭建的 gitlab 无法完全做到数据持久化,即机器重启 gitlab 数据会消失。
直到出现了 Windows 子系统 Linux:WSL2(Windows Subsystem for Linux),以上问题才可以解决。
本文通过 WSL2 搭建 docker 环境,并利用命令行神器 Windows Terminal 安装 gitlab。
同理,很多在 Linux 上好用的软件系统,也可以通过这种方式搭建,以此来提高在 Windows 开发和办公效率。
下面是具体的部署用到的工具有:
WSL2: Windows子系统 Linux
Windows Terminal: Windows 命令行神器
Docker:开源的应用容器引擎
gitlab:代码管理工具
WSL2 安装
检查 windows 版本
Windows 10, updated to version 2004, Build 19041 or higher.
开启 "Windows Subsystem for Linux"
以管理员身份打开 PowerShell,输入如下命令,并重启电脑
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
设置 WSL2 为默认
打开 PowerShell,输入如下命令:
wsl --set-default-version 2
安装 Linux 发行版本
1、打开 Microsoft Store , 搜索 Linux,本例选择 Ubuntu 18.04.
2、安装过程中,请设置用户名
Windows Terminal 安装
1、打开 Microsoft Store , 搜索 Window Terminal,进行安装.
2、安装完成,打开 Ubuntu 命令如下:
docker 安装
在 Windows Terminal Ubuntu 命令如下:
# 准备
sudo apt remove docker docker-engine docker.io
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
# 安装
sudo apt install docker-ce
# 启动
sudo service docker start
gitlab 安装
在 Windows Terminal Ubuntu 命令如下:
# 拉取镜像
sudo docker pull gitlab/gitlab-ce:latest
# 启动,注意:localhost 换成宿主机 ip,user 换成自己用户名
sudo docker run --detach --hostname localhost --publish 443:443 --publish 80:80 --publish 22:22 --name gitlab --volume /home/user/gitlab/config:/etc/gitlab --volume /home/user/gitlab/logs:/var/log/gitlab --volume /home/user/gitlab/data:/var/opt/gitlab -m 3g gitlab/gitlab-ce:latest
Window 与 Linux 网络打通
以管理员身份打开 PowerShell
# ip 为 Linux ip,请替换
netsh interface portproxy add v4tov4 listenport=80 listenaddress=0.0.0.0 connectport=80 connectaddress=ip
访问 gitlab
最后,您可以在 Windows ,通过 http://ip,访问 gitlab