0
点赞
收藏
分享

微信扫一扫

【vulntarget】系列:vulntarget-a 练习WP

f12b11374cba 2023-07-13 阅读 44
dockergitlab

0.为什么不用rpm包安装gitlab

gitlab rpm包需要依赖 openssh-server,而suse系统自带openssh(含client和server端)。

  1. 虽然suse自带openssh,但是rpm安装还会报错找不到依赖openssh-server
  2. 尝试网上找openssh-server的rpm安装会有更多依赖报错,放弃;
  3. rpm安装时尾部追加参数--nodeps --force强制跳过依赖,能正常安装完毕。但是本人在公司内网机器环境下gitlab-ctl status命令有些服务是down,查日志无果。放弃
  4. 上述更换机器、确保内存free足够的情况下,仍然不行,放弃rpm

1. 内网下以docker安装gitlab

我们准备两台Linux机器

  • 内网服务器待安装gitlab 为A(suse)
  • 可连接外网的服务器为B

1.1 安装docker

  • 自行下载匹配docker tar包,传入A。x86_64/docker-20.10.6.tgz
  • tar -xzvf docker-20.10.6.tgz
  • cp docker/* /usr/bin/
  • dockerd &
  • docker -v 有信息说明成功
    两台机器均要安装

1.2 获取镜像和配置

B机器执行

  • docker pull gitlab/gitlab-ce:latest
  • docker save gitlab/gitlab-ce:latest -o gitlab.tar
  • 下载生成的tar到本地,把tar上传到A

A机器安装镜像(参考官网文档 https://docs.gitlab.cn/jh/install/docker.html)

  • docker load < gitlab.tar

记得带上–privileged=true,让容器获取宿主机root权限。不写之后会有权限相关错误

#进入容器:
docker exec -it gitlab /bin/bash
#修改gitlab.rb:
vi /etc/gitlab/gitlab.rb

#加入如下
#gitlab访问地址,可以写域名。如果端口不写的话默认为80端口
external_url 'http://B机器的IP'
#ssh主机ip
gitlab_rails['gitlab_ssh_host'] = '192.168.124.194'
#ssh连接端口
gitlab_rails['gitlab_shell_ssh_port'] = 9922
# 让配置生效
gitlab-ctl reconfigure

启动前请参考 https://zhuanlan.zhihu.com/p/546533347 文章调小puma 核数,否则会按你机器的核数不断加线程吃内存,导致前端浏览器概率爆500、502错误,但是刷新几次又可以正常使用的情况!。

1.3 访问

#启动
gitlab-ctl restart

前端浏览器访问:http://B机器的IP:8888

第一次用root账号登录
root密码在
cat /data04/gitlab/etc/initial_root_password
文件中,24h该文件会被 gitlab-ctl reconfigure 删除

2.相关命令

举报

相关推荐

0 条评论