docker安装配置gitlab详细过程

1、方法一

1

docker pull beginor/gitlab-ce:11.0.1-ce.0

2、方法二
如果服务器网路不好或者pull不下来镜像,只能在其它网路比较好的机器上pull下来镜像,导出成一个文件,
再下载上传到网路不好的机器上,然后再从文件中导出来,这样在网络不好的机器上也能使用docker镜像了。

 

运行

1、通常会将 GitLab 的配置 (etc) 、 日志 (log) 、数据 (data) 放到容器之外, 便于日后升级, 因此请先准备这三个目录。

1

2

3

mkdir -p /mnt/gitlab/etc

mkdir -p /mnt/gitlab/log

mkdir -p /mnt/gitlab/data

2、准备好这三个目录之后, 就可以开始运行 Docker 镜像了。 我的建议是使用unless-stopped 作为重启策略, 
因为这样可以手工停止容器, 方便维护。

完整的运行命令如下:

1

2

3

4

5

6

7

8

9

10

docker run \

    --detach \

    --publish 8443:443 \

    --publish 8090:80 \

    --name gitlab \

    --restart unless-stopped \

    -v /mnt/gitlab/etc:/etc/gitlab \

    -v /mnt/gitlab/log:/var/log/gitlab \

    -v /mnt/gitlab/data:/var/opt/gitlab \

    beginor/gitlab-ce:11.0.1-ce.0

 配置GitLab主机名

1、修改/mnt/gitlab/etc/gitlab.rb

 把external_url改成部署机器的域名或者IP地址

1

vim /mnt/gitlab/etc/gitlab.rb

 

 2、修改/mnt/gitlab/data/gitlab-rails/etc/gitlab.yml

1

vim /mnt/gitlab/data/gitlab-rails/etc/gitlab.yml

找到关键字 * ## Web server settings * 

将host的值改成映射的外部主机ip地址和端口,这里会显示在gitlab克隆地址

到此为止,gitlab的web管理页面就可以正常访问

如果还是不能正常访问的话,检查端口是否被占用?

端口被占用(这里不做)

如果端口号被占用,改了默认的80端口,后面要接端口号

1

external_url 'http://192.168.182.129:8090' 注:这里容器内没改,只是映射到8090

修改NGINX监听的端口为9999

1

2

nginx['listen_addresses'] = ['*']

nginx['listen_port'] = 8090

如果8080端口被Tomcat占用,会出现502的页面

因此需要修改unicorn的配置,如下

1

2

3

4

5

6

7

### Advanced settings

# unicorn['listen'] = '127.0.0.1'

# unicorn['port'] = 8080

 

# 假设有Tomcat占用了8080,因此改为8082试一试

 unicorn['listen'] = '127.0.0.1'

 unicorn['port'] = 8082


修改Gitlab数据存储路径(这里不做)

默认的Gitlab数据存储路径,在目录/var/opt/gitlab/git-data下,防止以后数据过大,所以可以修改路径存储为/data/gitlabData

1

2

3

4

5

6

vim /mnt/gitlab/etc/gitlab.rb

### For setting up different data storing directory

###! Docs: https://docs.gitlab.com/omnibus/settings/configuration.html#storing-git-data-in-an-alternative-directory

###! **If you want to use a single non-default directory to store git data use a

###!   path that doesn't contain symlinks.**

# git_data_dirs({ "default" => { "path" => "/var/opt/gitlab/git-data", 'gitaly_address' => 'unix:/var/opt/gitlab/gitaly/gitaly.socket' } })

1

2

#edited by ouyangpeng 2017-8-10  配置gitlab的数据存储位置为/data目录下,保证硬盘安全

git_data_dirs({ "default" => { "path" => "/data/gitlabData" } })

设置完后,过一段使用时间,可以看到该目录下的resposities

配置并启动GitLab

像上面步骤修改了GitLab的ip地址一样,临时修改了GitLab的配置之后,得执行如下的命令,应用重新配好的配置并重启GitLab,然后查看GitLab的状态。

因为是容器,所以要进入到gitlab容器中执行命令

1

docker exec -ti gitlab /bin/bash

然后

1

2

3

gitlab-ctl reconfigure  #花时间比较多

gitlab-ctl restart    #改IP重启就可以了

gitlab-ctl status

登陆

打开浏览器,输入本机的ip地址并登陆

1

http://192.168.182.129:8090

  默认帐户的用户名是root,第一次访问时,将被重定向到密码重置屏幕,登录后,您可以更改用户名。

常用的几个Gitlab命令

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

# 重新应用gitlab的配置

gitlab-ctl reconfigure

 

# 重启gitlab服务

gitlab-ctl restart

 

# 查看gitlab运行状态

gitlab-ctl status

 

#停止gitlab服务

gitlab-ctl stop

 

# 查看gitlab运行日志

gitlab-ctl tail

 

# 停止相关数据连接服务

gitlab-ctl stop unicorn

gitlab-ctl stop sideki

 

 错误

1、docker启动报错信息如下

1

Error response from daemon: driver failed programming external connectivity on endpoint quirky_allen<strong>解决:</strong>

解决

检查docker端口映射是否冲突
重启docker服务后再启动容器

1

2

systemctl restart docker

docker start gitlab

 

参考文档

docker安装中文版的gitlab
https://hub.docker.com/r/beginor/gitlab-ce/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/386791.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

集合对偶律:分别用图文证明

集合几个法则&#xff1a; 求证&#xff1a; 注&#xff1a;右上角C表示此集合的补集/余集 语言描述&#xff1a;A 并 B的补集 A的补集 交 B的补集 A交B的补集 A的补集 并 B的补集 文字证明&#xff1a;&#xff08;思路&#xff1a;证明两个集合相等&#xff0c;可证两集合…

keras实现嘴唇图像autoencoder

本文分享了我在silent speech 项目过程中实现的基于嘴唇图像数据集的autoencoder自编码器。输入输出都是64∗6464*6464∗64的嘴唇灰度图。自编码器由编码解码两个部分构成&#xff0c;同时实现了利用checkpoint在每个epoch运算时&#xff0c;自动保存测试集loss更小的模型。 数…

historyReverser array reverse

historyReverser & array reverse "use strict";/**** author xgqfrms* license MIT* copyright xgqfrms** description historyReverser* augments Reverse 逆向 / Recursive 递归* example* link**/const historyReverser (datas [], text , debug false)…

pip国内加载速度慢解决方法

在国内使用pip安装包时有时会发现安装速度非常慢&#xff0c;甚至连接不上源。 为了加快pip的下载速度&#xff0c;我们可以主动使用 -i命令来切换到国内源。 下面放出实测好用的国内源 : 清华&#xff1a;https://pypi.tuna.tsinghua.edu.cn/simple 阿里云&#xff1a;http:…

oracle--导出、导入blob类型的字段

oracle--导出、导入blob类型的字段 blob是oracle中的一个数据类型&#xff0c;保存的是压缩后的二进制形式的大数据。 数据迁移如果涉及到blob字段&#xff0c;都不好处理&#xff0c;因为无法用常规方法进行操作&#xff0c;如&#xff1a;使用select查看该字段&#xff0c;…

深度学习分布式训练小结

分布式训练本质上是为了加快模型的训练速度&#xff0c;面对较为复杂的深度学习模型以及大量的数据。单机单GPU很难在有限的时间内达成模型的收敛。这时候就需要用到分布式训练。 分布式训练又分为模型并行和数据并行两大类。 1. 数据并行 数据并行在于将不同batch的数据分别…

MAC配置JCO,与找不到sapjco3异常

①到jco官网下载jco压缩包&#xff0c;解压 ②把libsapjco3.jnilib 放到一个文件夹中 把该路径配置到环境变量中 ③项目运行有可能会出现异常&#xff1a;找不到 sapjco3 &#xff1b; 第一种解决方式&#xff1a;配置虚拟机参数&#xff1a;-Djava.library.path之前环境变量路…

Java高并发之BlockingQueue

前言碎语 当系统流量负载比较高时&#xff0c;业务日志的写入操作也要纳入系统性能考量之内&#xff0c;如若处理不当&#xff0c;将影响系统的正常业务操作&#xff0c;之前写过一篇《spring boot通过MQ消费log4j2的日志》的博文&#xff0c;采用了RabbitMQ消息中间件来存储抗…

IP通信基础回顾2(第三周)

1.TCP报文 序号字段占4个字节。TCP连接中传送的数据流中每一个字节都编上一个序号。序号字段的值则是本报文段所发送的数据第一个字节的序号。 确认序号占4个字节。是期望收到的对方的下一个报文段字节胡序号。首部长度占4个字节。指出TCP首部长度在20-60字节之间&#xff0c;所…

ThreadPoolExecutor线程池 + Queue队列

1&#xff1a;BlockingQueue继承关系 java.util.concurrent 包里的 BlockingQueue是一个接口&#xff0c; 继承Queue接口&#xff0c;Queue接口继承 Collection BlockingQueue----->Queue-->Collection 图&#xff1a; 队列的特点是&#xff1a;先进先出&#xff08;FIFO…

linux基础文件管理软硬链接

一、文件系统的基本结构 1、文件和目录被组成一个单根倒置树目录结构 2、文件系统从根目录下开始&#xff0c;用“/”表示 3、根文件系统&#xff08;rootfs&#xff09;&#xff1a;root filesystem文件名区分大小写 4、以 . 开头的文件为隐藏文件 5、路径用/隔离 6文件有两类…

mybatis动态更新xml文件后热部署,不重启应用的方法

mybatis应用程序&#xff0c;由于是半自动化的sql, 有大量的sql是在xml文件中配置的&#xff0c;而在开发程序的过程中&#xff0c;通常需要边写sql变调试应用。但在默认情况下&#xff0c;xml文件里配置的sql语句是被放入到缓存中去了&#xff0c;每次更改有sql语句的xml文件&…

下拉插件 (带搜索) Bootstrap-select 从后台获取数据填充到select的 option中 用法详解...

今天收到了客户的需求&#xff0c;要求在新增停车场ID的时候要从数据库查出来对应的停车场名称然后显示在界面上。保存的时候按照停车场ID进行保存。 自己首先把后台的部分写完了&#xff0c;测试了接口数据。成功的拿到了ajax数据。 接下来&#xff0c;自己用了select下拉标签…

Linux自有服务(2)-Linux从入门到精通第六天(非原创)

文章大纲 一、设置主机名二、chkconfig三、ntp服务四、防火墙服务五、rpm管理&#xff08;重点&#xff09;六、cron/crontab计划任务&#xff08;重点&#xff09;七、学习资料下载八、参考文章 自有服务&#xff0c;即不需要用户独立去安装的软件的服务&#xff0c;而是当系统…

营销-营销方式:营销方式

ylbtech-营销-营销方式&#xff1a;营销方式营销方式是指营销过程中所有可以使用的方法。包括服务营销、体验营销、知识营销、情感营销、教育营销、差异化营销、直销、网络营销等。要有好的营销方式首先要创造行之有效的营销工具。但这并不意味着要把预算的75%都花在印制宣传资…

Kibana可视化管理页面详细使用说明

Kibana可视化管理页面详细使用说明 使用浏览器访问 ip:5601 默认端口&#xff0c;进入首页 Discover&#xff1a;日志管理视图 主要进行搜索和查询 Visualize&#xff1a;统计视图 构建可视化的图表 Dashboard&#xff1a;仪表视图 将构…

OO_BLOG3_规格化设计(JML学习)

目录 JML语言学习笔记理论基础应用工具链情况JMLUnit/JMLUnitNGUNIT3 作业分析作业 3-1 实现两个容器类Path和PathContainer作业 3-2 实现容器类Path和数据结构类Graph作业 3-3 实现容器类Path&#xff0c;地铁系统类RailwaySystem规格撰写的心得与体会最后&#xff0c;衷心感谢…

CMU Database Systems - Sorting,Aggregation,Join

Sorting 排序如果可在内存里面排&#xff0c;用经典的排序算法就ok&#xff0c;比如快排 问题在于&#xff0c;数据表中的的数据是很多的&#xff0c;没法一下都放到内存里面进行排序 所以就需要用到&#xff0c;外排&#xff0c;多路并归排序 看下最简单的&#xff0c;2路并归…

springboot线程池的使用和扩展

实战环境 windowns10&#xff1b;jdk1.8&#xff1b;springboot 1.5.9.RELEASE&#xff1b;开发工具&#xff1a;IntelliJ IDEA&#xff1b; 实战源码 本次实战的源码可以在我的GitHub下载&#xff0c;地址&#xff1a;gitgithub.com:zq2599/blog_demos.git&#xff0c;项目主…

通过Rancher安装K8s

说明 我们用kubernetes去管理Docker集群&#xff0c;即可以将Docker看成Kubernetes内部使用的低级别组件。另外&#xff0c;kubernetes不仅仅支持Docker&#xff0c;还支持Rocket&#xff0c;这是另一种容器技术。希望我这篇文章中简单的描述能让你对两者有所理解和认识。 机…