Windows环境 dockertopdesk 部署gitlab

1.在dockertopdesk里搜索 gitlab镜像

(pull)拉取镜像

2.运行镜像到容器

bash 复制代码
mkdir gitlab gitlab/etc gitlab/log gitlab/opt  

docker run -id -p 3000:80 -p 9922:22 -v /root/gitlab/etc:/etc/gitlab  -v /root/gitlab/log:/var/log/gitlab -v /root/gitlab/opt:/var/opt/gitlab --restart always --privileged=true --name gitlab gitlab/gitlab-ce

'''
命令解释:
-i  以交互模式运行容器,通常与 -t 同时使用命令解释:

-d  后台运行容器,并返回容器ID

-p 3000:80  将容器内80端口映射至宿主机9980端口,这是访问gitlab的端口

-p 9922:22  将容器内22端口映射至宿主机9922端口,这是访问ssh的端口

-v ./gitlab/etc:/etc/gitlab  将容器/etc/gitlab目录挂载到宿主机./gitlab/etc目录下,若宿主机内此目录不存在将会自动创建,其他两个挂载同这个一样

--restart always  容器自启动

--privileged=true  让容器获取宿主机root权限

--name gitlab-test  设置容器名称为gitlab

gitlab/gitlab-ce  镜像的名称,这里也可以写镜像ID

3.进入容器内部修改

bash 复制代码
docker exec -it gitlab /bin/bash

# 修改gitlab.rb
vi /etc/gitlab/gitlab.rb
## 加入如下
# gitlab访问地址,可以写域名。如果端口不写的话默认为80端口
external_url 'http://101.133.225.166'
# ssh主机ip
gitlab_rails['gitlab_ssh_host'] = '101.133.225.166'
# ssh连接端口
gitlab_rails['gitlab_shell_ssh_port'] = 9922

# 让配置生效
gitlab-ctl reconfigure

### 注意不要重启,/etc/gitlab/gitlab.rb文件的配置会映射到gitlab.yml这个文件,由于咱们在docker中运行,在gitlab上生成的http地址应该是http://101.133.225.166:3000,所以,要修改下面文件

# 修改http和ssh配置
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml

  gitlab:
    host: 101.133.225.166
    port: 3000 # 这里改为3000
    https: false


# 重启
gitlab-ctl restart
# 退出容器
exit

4.查看gitlab容器是否运行

bash 复制代码
docker ps

5.输入你配置的IP+端口在浏览器中运行(默认是80端口,如果做了端口映射,写映射后的端口)

6.登录:默认账号是root ,密码需要查看,密码默认24小时需要更改

cmd 进入docker容器

bash 复制代码
#gitlab 是容器的名字
 docker exec -it gitlab /bin/bash
 #切到gitlab目录
 cd etc/gitlab
 #查看
cat initial_root_password

输入账号和查询出来的密码登录

这里也可以直接修改密码,就不需要查询旧密码了。查询后旧密码也要进行更改密码的操作

修改root账户的密码

bash 复制代码
# 进入容器内部
docker exec -it gitlab /bin/bash

# 进入控制台
gitlab-rails console -e production

# 查询id为1的用户,id为1的用户是超级管理员
user = User.where(id:1).first
# 修改密码为lqz123456
user.password='lqz123456'
# 保存
user.save!
# 退出
exit

登录进页面

可以在偏好设置里面修改密码和使用中文语言以及配置ssh key

记得点击savachange按钮保存更改

7.配置ssh key

bash 复制代码
#在本地 git 项目中生成 ssh 公钥(一直回车)
ssh-keygen-t rsa -C"youremail@example.com" 
#查看key
cat ~/.ssh/id_rsa.pub

把查询出来的key 复制到ssh密码里就可以了

8.创建项目 菜单-项目-新建项目

查看新建的项目 菜单-你的项目

克隆项目

本地创建一个文件夹

bash 复制代码
git clone <项目地址>

这里需要注意,有可能出现,提示连接地址或端口错误

我这9922映射的是22端口(做ssh连接的)

3000映射的是80端口(默认是80)
出现错误检查步骤3是否配置正确
如果配置正确,检查你配置的地址是否在本地windows是否能ping通

bash 复制代码
 ping 127.0.00.10

如果丢包就说明和docker里面的gitlab无法通讯,换一个可以ping通的地址。

就可以把远程库的代码拉取到本地了

9.把项目推送到gitlab(如果你本地已经存在项目代码了)

先在gitlab上建立一个空的项目

在本地初始化项目,到git版本控制

bash 复制代码
#初始化
git init
#添加远端地址
git remote add origin <项目地址>
#推送
git push origin

j就把本地的项目推到gitlab了

end

相关推荐
cpsvps_net3 小时前
美国服务器环境下Windows容器工作负载智能弹性伸缩
windows
甄超锋3 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
cpsvps6 小时前
美国服务器环境下Windows容器工作负载基于指标的自动扩缩
windows
网硕互联的小客服9 小时前
Apache 如何支持SHTML(SSI)的配置方法
运维·服务器·网络·windows·php
etcix9 小时前
implement copy file content to clipboard on Windows
windows·stm32·单片机
许泽宇的技术分享9 小时前
Windows MCP.Net:基于.NET的Windows桌面自动化MCP服务器深度解析
windows·自动化·.net
非凡ghost10 小时前
AMS PhotoMaster:全方位提升你的照片编辑体验
windows·学习·信息可视化·软件需求
mortimer12 小时前
一次与“顽固”外部程序的艰难交锋:subprocess 调用exe踩坑实录
windows·python·ai编程
gameatp14 小时前
从 Windows 到 Linux 服务器的全自动部署教程(免密登录 + 压缩 + 上传 + 启动)
linux·服务器·windows
穷人小水滴14 小时前
在 windows 运行 flatpak 应用 (WSL)
linux·windows·ubuntu