Linux部署Gitlab

Linux部署Gitlab

1.拉取镜像

docker pull gitlab/gitlab-ce

2.运行如下命令来启动Gitlab

需要注意的是我们的Gitlab的http服务运行在宿主机的1080端口上,这里我们将Gitlab的配置,日志以及数据目录映射到了宿主机的指定文件夹下,防止我们在重新创建容器后丢失数据。

docker run --detach \
  --publish 10443:443 --publish 8081:80 --publish 1022:22 \
  --name gitlab \
  --restart always \
  --volume /mydata/gitlab/config:/etc/gitlab \
  --volume /mydata/gitlab/logs:/var/log/gitlab \
  --volume /mydata/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ce:latest

3.访问Gitlab

  • 访问地址:http://192.168.1.219:8081
  • 由于Gitlab启动比较慢,需要耐心等待10分钟左右,如果Gitlab没有启动完成访问,会出现如下错误

Linux部署Gitlab_第1张图片

等几分钟后继续访问该地址

第一次输入你的账号密码

Linux部署Gitlab_第2张图片

4.查看gitlab初始账号密码

进入容器

docker exec -it gitlab /bin/bash

执行

vi  /etc/gitlab/initial_root_password

Linux部署Gitlab_第3张图片

默认账号是root 密码输入上面那个即可登录

5.改下密码

Linux部署Gitlab_第4张图片

6.设置中文

Linux部署Gitlab_第5张图片

新建好项目,这个改为你的ip+端口

Linux部署Gitlab_第6张图片

7.linux安装maven

这里选择的是wget安装

查看以前maven的地址:

https://archive.apache.org/dist/maven/maven-3

直接wget安装

wget https://archive.apache.org/dist/maven/maven-3/3.8.1/binaries/apache-maven-3.8.1-bin.tar.gz

解压

tar -zxvf  apache-maven-3.8.1-bin.tar.gz

新建localMaven

Linux部署Gitlab_第7张图片

在conf/setting.xml中修改本地仓库路径

Linux部署Gitlab_第8张图片

修改环境变量

vi /etc/profile

添加一下内容

MAVEN_HOME=/opt/maven/apache-maven-3.8.1
PATH=$MAVEN_HOME/bin:$PATH
export MAVEN_HOME PATH

/usr/local/apache-maven-3.8.1

立即生效

source /etc/profile

测试

mvn -version

Linux部署Gitlab_第9张图片

8.问题

通过 gitlab 容器创建了一个项目,想 clone 到本地,结果发现项目的 IP 地址是一串数字

Linux部署Gitlab_第10张图片

解决方案:

首先,先看我docker容器启动时候的映射

docker run --detach \
  --publish 10443:443 --publish 8081:80 --publish 1022:22 \
  --name gitlab \
  --restart always \
  --volume /mydata/gitlab/config:/etc/gitlab \
  --volume /mydata/gitlab/logs:/var/log/gitlab \
  --volume /mydata/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ce:latest

所以执行linux查找文件

find /mydata/gitlab/config -name gitlab.rb

Linux部署Gitlab_第11张图片

执行vi /mydata/gitlab/config/gitlab.rb

将这个 external_url 改成主机的 IP,不需要加端口哦

保存!

重启gitlab容器

docker restart gitlab

ps:如果你gitlab访问的端口不是80的话 这是要用tcp代理 把你原先的端口代理到80端口
Linux部署Gitlab_第12张图片

你可能感兴趣的:(Linux专栏,linux,gitlab,运维)