CentOS6.7下GitLab的最简单安装方法以及Eclips

2018-01-11  本文已影响0人  耗子在简书

一篇文,学会GitLab搭建和配置使用Eclipse的Git插件

操作系统:CentOS6.7
GotLab版本:10.3.2-CE
(所有服务器上的配置均在root权限下操作)

一、基础环境搭建


1.安装软件依赖

yum install -y curl policycoreutils-python openssh-server cronie

2.配置主机名

cat << EOF > /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=gitlab.example.com
EOF

3.添加防火墙规则放行ssh和http服务用到的端口

lokkit -s http -s ssh

二、安装邮件服务器Postfix(可选)


yum install postfix
service postfix start
chkconfig postfix on

注:安装过程中在配置界面选择Internet Site,使用服务器的域名来配置mail name

如不想启用项目管理的邮件功能,可以跳过此步。

三、安装GitLab


1.离线安装GitLab

安装GitLab有很多办法,有直接安装的,有通过添加源在线安装的,有Docker、有VM镜像。。。

本文以生产环境部署为背景,部署在物理服务器上。这里不建议使用官方Installation页面Recommended的安装方式,因为官方脚本里提供的源对国内来说速度很不友好,安装过程很痛苦,这里采用离线安装的方式。

首先在镜像站下载GitLab的安装包:

清华镜像站(推荐):
https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/
官方镜像站:
https://packages.gitlab.com/gitlab/gitlab-ce

假设服务器的主机名/域名是gitlab.example.com,安装命令为:

EXTERNAL_URL="http://gitlab.example.com" rpm -i gitlab-ce-10.3.2-ce.0.el6.x86_64.rpm

正确安装后应有下列输出:

It looks like GitLab has not been configured yet; skipping the upgrade script.

       *.                  *.
      ***                 ***
     *****               *****
    .******             *******
    ********            ********
   ,,,,,,,,,***********,,,,,,,,,
  ,,,,,,,,,,,*********,,,,,,,,,,,
  .,,,,,,,,,,,*******,,,,,,,,,,,,
      ,,,,,,,,,*****,,,,,,,,,.
         ,,,,,,,****,,,,,,
            .,,,***,,,,
                ,*,.
  


     _______ __  __          __
    / ____(_) /_/ /   ____ _/ /_
   / / __/ / __/ /   / __ `/ __ \
  / /_/ / / /_/ /___/ /_/ / /_/ /
  \____/_/\__/_____/\__,_/_.___/
  

Thank you for installing GitLab!
GitLab was unable to detect a valid hostname for your instance.
Please configure a URL for your GitLab instance by setting `external_url`
configuration in /etc/gitlab/gitlab.rb file.
Then, you can start your GitLab instance by running the following command:
  sudo gitlab-ctl reconfigure

For a comprehensive list of configuration options please see the Omnibus GitLab readme
https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md

2.启动GitLab

正常情况下启动GitLab的命令为:

gitlab-ctl start

但因为是安装后第一次启动,配置文件需要初始化,第一次启动要执行:

gitlab-ctl reconfigure

稍候片刻就执行完成了。
此时可以通过

netstat -lntp

查看进程占用端口情况,如果是按照上面的步骤全新安装,输出应类似如下:

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address    Foreign Address  State       PID/Program name   
tcp        0      0 127.0.0.1:9121   0.0.0.0:*        LISTEN      46072/redis_exporte 
tcp        0      0 127.0.0.1:9090   0.0.0.0:*        LISTEN      46354/prometheus    
tcp        0      0 127.0.0.1:9187   0.0.0.0:*        LISTEN      46388/postgres_expo 
tcp        0      0 127.0.0.1:9100   0.0.0.0:*        LISTEN      45935/node_exporter 
tcp        0      0 127.0.0.1:9229   0.0.0.0:*        LISTEN      46310/gitlab-workho 
tcp        0      0 127.0.0.1:9168   0.0.0.0:*        LISTEN      46342/ruby          
tcp        0      0 127.0.0.1:8080   0.0.0.0:*        LISTEN      45473/unicorn maste 
tcp        0      0 0.0.0.0:80       0.0.0.0:*        LISTEN      45632/nginx         
tcp        0      0 0.0.0.0:22       0.0.0.0:*        LISTEN      43821/sshd          
tcp        0      0 127.0.0.1:631    0.0.0.0:*        LISTEN      2064/cupsd          
tcp        0      0 127.0.0.1:25     0.0.0.0:*        LISTEN      8741/master         
tcp        0      0 0.0.0.0:8060     0.0.0.0:*        LISTEN      45632/nginx         
tcp        0      0 ::1:9168         :::*             LISTEN      46342/ruby          
tcp        0      0 :::22            :::*             LISTEN      43821/sshd          
tcp        0      0 ::1:631          :::*             LISTEN      2064/cupsd          
tcp        0      0 ::1:25           :::*             LISTEN      8741/master         

3.访问GitLab的WEB界面

如果服务器配置了域名,择可以直接访问域名;
如果服务器是在局域网内搭建,在客户端的主机上要配置服务器到主机名的映射:

服务器ip     服务器主机名

windows 10:
a.右键单击左下角窗口按钮,弹出菜单中选择“命令提示符(管理员)”
b.在命令行提示符键入:notepad drivers\etc\hosts
c.在打开的hosts文件中添加一行:(假设服务器的ip为192.168.10.168,主机名为 gitlab.example.com)

192.168.10.168   gitlab.example.com

保存并关闭

Most Linux OS:
执行:

cat << EOF >> /etc/hosts
192.168.10.168   gitlab.example.com
EOF

打开浏览器,输入域名/ip,应能看到如下界面:
首次安装需要设置root密码。


用户名为root
密码就是刚才设置的密码。



详细的使用在下一章结合Eclipse讲解。

四、Eclipse配置使用Git


1.在GitLab上新建一个Project(项目)

这里可以看到有三个选项卡,分别是空项目、从模板新建和导入项目。
看图含义很好理解,就不多赘述了。这里选择空项目。

新建一个名为“GitTest”的项目,属性设置为“Internal”防止未登录用户获得项目的数据。项目描述随便写一些东西。然后点击创建。


2.导入SSH Key

成功创建项目后,页面顶部会提示要导入SSH Key,以使用SSH来push代码。


(以ubuntu Linux为例,windows环境请自行查阅资料)
打开终端,输入:

cat .ssh/id_rsa.pub

会得到类似下面这样一串以ssh-rsa开头,以user@hostname结尾的Key:

如果执行cat命令之后没有输出,则需要生成ssh key:

ssh-keygen

一路回车使用默认值即可,然后再执行上面的命令得到生成的key。

点击 “add an SSH key”

把刚才生成的key粘贴到文本框里,然后点击 “Add key”

这样就可以在自己的电脑上使用Git客户端来管理GitLab上的项目了。
关于Git客户端的操作,请参照其他资料,这里先不做讲解。

3.在Eclipse中使用Git

a.向项目中添加一个README

我们先往项目里加点东西,点击页首的 [Projects]->[Your Projects]->[Administrator GitTest] 回到创建的项目。新建一个 README.md
GitLab的文档建议使用Markdown语法,想要熟练编写漂亮的文档,还要掌握Markdown语法。

先随便写了一点东西,关于文档的规范,后续还要专门讲,这里就不在意这些细节了。
写完之后提交,看看效果:


这样我们的项目下就有东西了。

b.配置Eclipse的Git插件

一般现在常用的版本都已经预装好了Git插件
我们首先给Eclipse添加用户信息、SSH key
选择 [Window]->[Preference] 打开属性对话框,在filter里键入git:

在左侧选择Configuration,点击右侧的Add Entry,Key项添加uer.email,Value添加邮箱地址,这里随便写了一个:



点击OK提交之后,再次点击Add Entry,添加:


c.配置Eclipse的SSH key

还是在preference对话框,左侧filter输入ssh,选择SSH2,右侧的选项卡选择 [Key Management](我的这个Eclipse主题有Bug,看不清选项卡的字):

然后点击 [Generate RSA Key...] 生成一个key:

复制这个Key,点击右下角的 [Apply and Close] 关闭对话框。
在GitLab里点击右上角的头像,选择 [Settings] 进入个人设置页,在页面左侧选择SSH Keys:

把刚才复制的Key添加进来。


点击Add key提交。

d.使用Eclipse的Git插件clone GitLab上的项目

现在完成了基本的配置,回到Eclipse,点击右上角的 [Open Perspective]


在弹出的对话框选择Git并Open(我的已经选择好了所以上图能看见):

然后Eclipse就进入到了Git视图:



在左侧项目窗口内选择第三个图标,“Clone a Git Repository and add the clone to this view”:


打开GitLab的项目视图,把刚才建立的项目ssh链接复制出来:

粘贴到Eclipse里:


点击下一步,就可以得到GitTest的分支信息:


再点击下一步,我们可以在①处指定本地repo存放的目录,在②处可以新建或者选择工作集:



点击完成,导入项目。



在左面的repo视图中可以看到README.md文件了。双击打开,可以看到文件内容。
e.使用Eclipse的Git插件的commit、push和fetch

在Eclipse中修改项目文件的内容之后,需要先commit到本地repo,右键GitTest项目名称:


选择 [Commit...] 填写好相关的说明。

双击修改的文件可以查看修改的内容:

点击Commit提交修改。这时我们打开GitLab可以看到修改的内容并没有同步上来,这是因为刚才commit的修改是提交到了本地的repo,如果要提交到GitLab,还需要push一下。

右键Local目录下的master分支,选择Push Branch...

前面clone的时候已经配置好了项目的信息,这里就使用默认配置就可以了,点击Next。



点击Finish确认Push动作。



Push完成:

打开GitLab的项目页,此时可以看到README.md的内容已经更新了。


下面在GitLab上修改一下README:


切换到Eclipse,在左侧项目窗口右键GitTest项目,点击Pull

这样就把最新的内容从GitLab上同步下来了,打开WorkingTree下的README看看:

已经变成GitLab上最新的内容了。

下一篇文章主要讲使用Git进行项目管理的一些原则和技巧

上一篇下一篇

猜你喜欢

热点阅读