以前自己写的代码都是在本地,因为都是自己一个人维护,现在交给团队维护了,所以想着搭建一个gitlab

1,拉镜像

安装非常简单

docker search gitlab  搜索镜像

docker pull gitlab/gitlab-ce 拉取镜像

docker images 查询镜像

2,创建本地映射文件

test-team-server:~$ mkdir gitlab
test-team-server:~$ cd gitlab/
test-team-server:~/gitlab$ mkdir config logs data

3,安装

docker run --detach -p 8843:443 -p 8090:80 -p 2222:22 --name gitlab --restart always -v /home/dapeng/gitlab/config:/etc/gitlab -v /home/dapeng/gitlab/logs:/var/log/gitlab -v /home/dapeng/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce

docker ps -a | grep gitlab

docker logs -f gitlab

4,配置

访问gitlab http://192.168.1.119:8090

(1)设置密码,初始账户为root,设置密码之后就可以登录了

(2)重启、启动、停止、状态

gitlab-ctl restart  // 重启

gitlab-ctl stop      // 停止

gitlab-ctl start     // 启动

gitlab-ctl status  //状态

(3)修改hostname

gitlab项目默认是以容器id作为hostname,ssh访问的时候会提示hostname找不到,所以我们需要修改一下配置文件

/home/dapeng/gitlab/config/gitlab.rb   主要修改以下几个值

external_url 'http://192.168.1.119'     #修改为http访问的外部映射的主机ip和port

gitlab_rails['gitlab_ssh_host'] = '192.168.1.119'    #修改为ssh访问的外部映射的主机ip或者hostname

gitlab_rails['gitlab_shell_ssh_port'] = 2222    #ssh默认是22端口,改成映射到外部的2222端口

然后执行一下docker restart gitlab

这样在项目中显示的访问gitlab仓库的地址是

ssh://git@192.168.1.119:8090:2222/automation/apitest.git

http://192.168.1.119/automation/apitest.git

(4)下载git.exe 到本地windows

ssh-keygen -o -t rsa -b 4096 -C "xxxxxxxxx@xxxxx.com"   然后一直回车

  • 复制~/.ssh/id_rsa.pub内容,

~表示用户目录,比如windows就是C:\Users\Administrator

Administrator@ERIC MINGW64 ~/.ssh
$ cat id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCrPgBRiWV7d6yRTdkLkP0ae+6P571uMDtxAL1x2fsNGWvmzFZTHUrHS49UJgPpaGu0ZtOv4X7bX4mmEHlmSXo5v6lZ5YC+oEAWXgg2c+ES9jf4llfOggCYEIrek//xF6OTOrZxpvzrTkAroiTdeRtivnFnIMgaNz3rO53ryH0M5L9vzWFKm7ufuKyqY/910X73+9pP9Rf1txWgY8cd3iVGSjooKPND0rY34sVm7JQ16llx49MjIKTX79e2V3p+wy6LOuSawwH9XtQrakj01aXmhQHKIRIqTn0M0FYtEitEQxuagBdzeyMF46rMWrk8k87FnJaPsIm/WNRMVimiL4UlSjp3iSg4p/+GebzdBr8S3oXT6lWglQBVXLEYHZgXRQXNhTCOoeOWEdW1wtKYPpGY+LtMkSEGbt0/v68Fj3oDXllVle3SjlI4i9KF86snfQPd3jDvBu7padvDmwtl3bLWKA38/DLe+cTUSHgymTTmfW6fDT5VpcAlKkyh6Dvcyb0hlUGdNVzasQ4nqtQtODpGhb5pfdtJlhZN2P0QlI7n0KAEPkuQUnpNMKf94fmUxiH6QQLOeVrWuZw4CW/B+bnYHoe85vySNhUI+H2qat5+3/p09AD+mxffKbSgmR6QWE9DXFTIGjtJ01dMFy699Qi8YOVsXwViOiu9Lab9ymxqLQ== hailiangyou@dingtalk.com

(4)网页上配置ssh-key

http://192.168.1.119:8090/profile/keys

把上面cat出来的内容复制到gitlab页面上

5,拉取项目,git常规使用

1,创建一个文件夹作为仓库repo   D盘下的repo文件夹

打开git bash, cd /d/repo

2,设置用户名和邮箱

git config --global user.name "eric"

git config --global user.email "xxxx@xxx.com"

3,克隆项目,默认拉取的是master分支

git clone ssh://git@192.168.1.119:2222/automation/apitest.git

Administrator@ERIC MINGW64 /d/repo
$ git clone ssh://git@192.168.1.119:2222/automation/apitest.git
Cloning into 'apitest-framework'...
The authenticity of host '[192.168.1.119]:2222 ([192.168.1.119]:2222)' can't be established.
ECDSA key fingerprint is SHA256:IoMGBM4jlCN20ynwVKKrvwUFb8pKP5BjfZy5QG0/A2c.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.1.119]:2222' (ECDSA) to the list of known hosts.
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (3/3), done.
Checking connectivity... done.

4,git使用

在本地创建一个待push的测试文件,test.md

touch test,md

git status  #可以看到红色提示该分支有需要更新的文档 test.md

git add test.md  #添加文件到待上传的缓冲区里

git commit -m "test push test.md"   #提交并解释

git push origin master  #提交到仓库主分支

然后就可以在gitlab网页上看到刚刚提交的文件

关于更详细的git使用教程,可以查看https://www.runoob.com/git/git-tutorial.html

Ubuntu+docker+gitlab安装和使用的更多相关文章

  1. Ubuntu bitnami gitlab 安装

    /************************************************************************************** * Ubuntu bit ...

  2. Centos + docker,Ubuntu + docker介绍安装及详细使用

    docker笔记 常用命令 设置docker开机自启:sudo chkconfig docker on 查所有镜像: docker images 删除某个镜像:docker rmi CONTAINER ...

  3. ubuntu docker inflxudb(安装 使用 备份 还原 以及python编码) telegraf Grafana

    inflxudb1.7.7 1.拉取最新的镜像 docker pull influxdb 2.运行实例: docker run -d --restart=always -p 8086:8086 -p ...

  4. ubuntu docker的安装和使用

    Docker CE for Ubuntu Docker CE for Ubuntu is the best way to install the Docker platform on Ubuntu L ...

  5. Ubuntu Docker 简单安装 GitLab

    相关博文: Ubuntu 简单安装 Docker Ubuntu 简单安装和配置 GitLab 服务器版本 Ubuntu 16.04 LTS. 1. 安装和配置 安装命令: sudo docker ru ...

  6. docker gitlab安装

    mkdir -p /data/docker/volumes/gitlab chmod 777 /data/docker/volumes/gitlab cd /data/docker/volumes/g ...

  7. Ubuntu+docker+jenkins安装详细指南

    最近项目上开始实行自动化测试,避免不了与jenkins等持续集成工具打交道,今天就给大家分享一下有关jenkins的简单安装和使用 1,准备环境 (1)ubuntu系统 (2)docker (3)je ...

  8. ubuntu docker 环境安装

    转载:https://www.cnblogs.com/blog-rui/p/9946382.html 1. 在Ubuntu中安装Docker 更新ubuntu的apt源索引 sudo apt-get ...

  9. Ubuntu Docker 安装和配置 GitLab CI 持续集成

    相关文章: Ubuntu Docker 简单安装 GitLab 劈荆斩棘:Gitlab 部署 CI 持续集成 目的:在 Ubuntu 服务器上,使用 Docker 安装和配置 GitLab Runne ...

随机推荐

  1. HDFS介绍~超详细

    HDFS(Hadoop Distributed File System)   (1) HDFS--Hadoop分布式文件存储系统   源自于Google的GFS论文,HDFS是GFS的克隆版 HDFS ...

  2. 智能家居系列之——WIFI小车

    2017年准备搬新家了,一直关注着树莓派的论坛,看有没有新玩意,想着今年过年在杭州过年,头一次在城里过年,感觉特别无聊,没有麻将可以打,没有鞭炮可以放,只能在家做做小玩意.从小就对四驱车有兴趣,一直想 ...

  3. 利用WxJava实现网站集成微信登录功能,核心代码竟然不超过10行

    最近网站PC端集成微信扫码登录,踩了不少坑,在此记录下实现过程和注意事项. 本文目录 一.微信开放平台操作步骤1.创建“网站应用”2.获取AppID和AppSecret二.开发指南三.开发实战1.po ...

  4. unity编辑器扩展_04(使用Selection获取选择的游戏物体)

    代码: [MenuItem("Tools/GetChance", false, 1)]    static void GetChance()    {        if (Sel ...

  5. HDU 6059

    题意略. 思路:我们要想令 A[i] ^ A[j] < A[j] ^ A[k](i < j < k),由于A[i]和A[k]都要 ^ A[j],所以我们只需研究一下i,k这两个数之间 ...

  6. 一文搞懂transform: skew

    如何理解斜切skew,先看一个demo.在下面的demo中,有4个正方形,分别是 红色:不做skew变换, 绿色:x方向变换, 蓝色:y方向变换, 黑色:两个方向都变换, 拖动下面的滑块可以查看改变s ...

  7. P3980 [NOI2008]志愿者招募 费用流 (人有多大胆地有多大产

    https://www.luogu.org/problemnew/show/P3980 感觉费用流比网络流的图更难想到,要更大胆.首先由于日期是连续的,所以图中的点是横向排列的. 这道题有点绕道走的意 ...

  8. 楼房重建 HYSBZ - 2957

    楼房重建 HYSBZ - 2957 第一次写分块, 写了之后觉得真的是暴力的一比. 题解:先讲n分成 sqrt(n)块,记得补上末尾的, 然后就是对于每一次更新操作, 都重新的讲这个块里面的有效楼放入 ...

  9. poj 3616 Milking Time (基础dp)

    题目链接 http://poj.org/problem?id=3616 题意:在一个农场里,在长度为N个时间可以挤奶,但只能挤M次,且每挤一次就要休息t分钟: 接下来给m组数据表示挤奶的时间与奶量求最 ...

  10. hdu 1028 Ignatius and the Princess III 母函数

    Ignatius and the Princess III Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K ...