Windows下搭建gitlab

利用 WSL 搭建 gitlab docker 版本

部署用到的工具

  • Windows Terminal: Windows 命令行神器
  • WSL2: Windows子系统 Linux
  • Docker:开源的应用容器引擎
  • gitlab:代码管理工具

1. 安装WSL2

1.开启 "Windows Subsystem for Linux"

以管理员身份打开 PowerShell,输入如下命令,并重启电脑:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

2.设置 WSL2 为默认

打开 PowerShell,输入如下命令:
wsl --set-default-version 2

3.安装 Linux 发行版本

3.1 打开 Microsoft Store , 搜索 Linux,下载Ubuntu

image

3.2 安装过程中,请设置用户名

image

3.3 设置root密码

输入命令:sudo passwd root

4.Windows Terminal 安装

1、打开 Microsoft Store , 搜索 Window Terminal,进行安装.

2、安装完成,打开 Ubuntu 命令界面

5.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

6.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 

7.Window 与 Linux 网络打通

以管理员身份打开 PowerShell

# ip 为 Linux ip,请替换
netsh interface portproxy add v4tov4 listenport=80 listenaddress=0.0.0.0 connectport=80 connectaddress=ip

8.重置Docker里的gitlab管理员用户密码

8.1.docker ps 找出容器的唯一标识

sudo docker ps

user@DESKTOP-KSERHIV:/mnt/c/Users/XXX$ sudo docker ps
CONTAINER ID   IMAGE                     COMMAND             CREATED          STATUS                    PORTS
                                                                                              NAMES
f47918ecd153   gitlab/gitlab-ce:latest   "/assets/wrapper"   21 minutes ago   Up 21 minutes (healthy)   0.0.0.0:22->22/tcp, :::22->22/tcp, 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   gitlab

8.2 docker exec -it f47918ecd153 /bin/bash 进入Docker容器运行环境

8.3 开始重置gitlab管理员用户密码

root@192:/# gitlab-rails console -e production
--------------------------------------------------------------------------------
 Ruby:         ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-linux]
 GitLab:       14.0.5 (25fc1060aff) FOSS
 GitLab Shell: 13.19.0
 PostgreSQL:   12.6
--------------------------------------------------------------------------------
Loading production environment (Rails 6.1.3.2)
irb(main):001:0> user=User.where(id:1).first
=> #<User id:1 @root>
irb(main):002:0> user.password='123456'
=> "123456"
irb(main):003:0> user.password_confirmation='123456'
=> "123456"
irb(main):004:0> user.save!
Enqueued ActionMailer::MailDeliveryJob (Job ID: 89e9421a-8a23-4789-8833-d063410200cc) to Sidekiq(mailers) with arguments: "DeviseMailer", "password_change", "deliver_now", {:args=>[#<GlobalID:0x00007f5e32c89168 @uri=#<URI::GID gid://gitlab/User/1>>]}
=> true
irb(main):005:0> exit

重要的是,您必须同时更改密码和password_confirmation才能使其正常工作,别忘了保存更改

8.4 至此,管理员用户名重置完毕,重置后的密码为123456

9.访问 gitlab

最后,您可以在 Windows ,通过 http://ip,访问 gitlab

10.相关链接:

https://www.cnblogs.com/zhang-yawei/p/12692493.html

https://www.jianshu.com/p/1dc7d1626145

posted @ 2021-07-16 12:33  x_amos  阅读(6174)  评论(0编辑  收藏  举报