Ubuntu+docker+gitlab安装和使用
以前自己写的代码都是在本地,因为都是自己一个人维护,现在交给团队维护了,所以想着搭建一个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
- Git-2.8.1-64-bit.exe 安装,默认选项即可
- 打开git bash, 生成密钥,有关密钥的说明可以参考 http://192.168.1.119:8090/help/ssh/README#generating-a-new-ssh-key-pair
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安装和使用的更多相关文章
- Ubuntu bitnami gitlab 安装
/************************************************************************************** * Ubuntu bit ...
- Centos + docker,Ubuntu + docker介绍安装及详细使用
docker笔记 常用命令 设置docker开机自启:sudo chkconfig docker on 查所有镜像: docker images 删除某个镜像:docker rmi CONTAINER ...
- ubuntu docker inflxudb(安装 使用 备份 还原 以及python编码) telegraf Grafana
inflxudb1.7.7 1.拉取最新的镜像 docker pull influxdb 2.运行实例: docker run -d --restart=always -p 8086:8086 -p ...
- ubuntu docker的安装和使用
Docker CE for Ubuntu Docker CE for Ubuntu is the best way to install the Docker platform on Ubuntu L ...
- Ubuntu Docker 简单安装 GitLab
相关博文: Ubuntu 简单安装 Docker Ubuntu 简单安装和配置 GitLab 服务器版本 Ubuntu 16.04 LTS. 1. 安装和配置 安装命令: sudo docker ru ...
- docker gitlab安装
mkdir -p /data/docker/volumes/gitlab chmod 777 /data/docker/volumes/gitlab cd /data/docker/volumes/g ...
- Ubuntu+docker+jenkins安装详细指南
最近项目上开始实行自动化测试,避免不了与jenkins等持续集成工具打交道,今天就给大家分享一下有关jenkins的简单安装和使用 1,准备环境 (1)ubuntu系统 (2)docker (3)je ...
- ubuntu docker 环境安装
转载:https://www.cnblogs.com/blog-rui/p/9946382.html 1. 在Ubuntu中安装Docker 更新ubuntu的apt源索引 sudo apt-get ...
- Ubuntu Docker 安装和配置 GitLab CI 持续集成
相关文章: Ubuntu Docker 简单安装 GitLab 劈荆斩棘:Gitlab 部署 CI 持续集成 目的:在 Ubuntu 服务器上,使用 Docker 安装和配置 GitLab Runne ...
随机推荐
- 【实践总结】给Centos和Ubuntu设置静态网络IP以及配置ssh功能
作为一名以Windows平台为主的开发者,在接触和使用Linux系统的过程中总会遇到一系列的问题.每当这时候,我相信大部分人是和我一样的处理办法,就是网上各种搜索尝试直到问题解决为止,而有些问题,前后 ...
- Python面试总结篇
Python Coding Interview Questions and Answers 面试题一:逻辑运算赋值 v1 = 1 or 9 v2 = 0 or 9 # print(v1, v2)会输出 ...
- lightoj 1049 - One Way Roads(dfs)
Time Limit: 0.5 second(s) Memory Limit: 32 MB Nowadays the one-way traffic is introduced all over th ...
- poj 3616 Milking Time (基础dp)
题目链接 http://poj.org/problem?id=3616 题意:在一个农场里,在长度为N个时间可以挤奶,但只能挤M次,且每挤一次就要休息t分钟: 接下来给m组数据表示挤奶的时间与奶量求最 ...
- SpringCloud Feign 之 Fallback初体验
SpringCloud Feign 之 Fallback初体验 在微服务框架SpringCloud中,Feign是其中非常重要且常用的组件.Feign是声明式,模板化的HTTP客户端,可以帮助我们更方 ...
- DELPHI GDI + TGPFont UnitPixel 问题解决
查不少资料,在 GPfont := TGPFont.Create(fontFamily, Font.Size , FontStyleRegular,UnitPixel ); 时,显示的字体,并不是按D ...
- 一起来读Netty In Action之传输(三)
当我们的应用程序需要接受比预期多很多的并发连接的时候,我们需要从阻塞传输切换到非阻塞传输上去,如果是我们的网络编程是基于jdk提供的API进行开发地的话,这种传输模式的切换几乎要我们重构整个网络传输相 ...
- Day004_Linux基础_基础命令之tar打包解包
基础命令之 打包,和解包. tar zcvf 打包的参数 tar zcvf /tmp/etc.tar.gz /etc 将/etc/下的文件压缩成一个压缩包 z 通过gzip工具进行压缩 c 表示 ...
- Python批量删除mysql中千万级大量数据
场景描述 线上mysql数据库里面有张表保存有每天的统计结果,每天有1千多万条,这是我们意想不到的,统计结果咋有这么多.运维找过来,磁盘占了200G,最后问了运营,可以只保留最近3天的,前面的数据,只 ...
- mapper文件中“添加一条新数据并返回此数据的ID(主键)”的方法
在mapper文件的insert语句前加上<selectKey>标签即可 如下: 添加前测试: 添加后测试: