Docker下Gitlab安装、配置、使用详细教程

目录 原创

1.拉取Gitlab镜像

docker pull gitlab/gitlab-ce

gitlab-ce为社区版本,后面不填写版本则默认pull最新latest版本

2.运行Gitlab镜像

运行容器前,新建好/home/gitlab/config 、log、data三个文件夹,运行容器时将GitLab 的配置 (config) 、 日志 (log) 、数据 (data) 放到宿主机的/home/gitlab目录下。并且确认宿主机8023、8020、8022端口未被占用,映射容器的443、80、22端口。

docker run -d  \
-p 8023:443 \
-p 8020:80 \
-p 8022:22 \
--name gitlab \
--restart always \
-v /home/gitlab/config:/etc/gitlab \
-v /home/gitlab/logs:/var/log/gitlab \
-v /home/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce

如果宿主机80、443端口均可以被访问,内网使用或者购买云服务器直接映射80、443即可

-p 443:443 \
-p 80:80 \
-p 222:22 \

运行成功,会返回一串字符

3.修改Gitlab配置

按上面的方式,gitlab容器运行没问题,但在gitlab上创建项目的时候,生成项目的URL访问地址是按容器的hostname来生成的,也就是容器的id。作为gitlab服务器,我们需要一个固定的URL访问地址,于是需要配置gitlab.rb(宿主机路径:/home/gitlab/config/gitlab.rb)

vi /home/gitlab/config/gitlab.rb
# 配置http协议所使用的访问地址,不加端口号
external_url 'http://gitlab.orcy.net'

# 配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = 'gitlab.orcy.net'
# 此端口是run时22端口映射的8022端口
gitlab_rails['gitlab_shell_ssh_port'] = 8022 
#保存配置文件并退出
:wq 

4.进入gitlab容器内,重载配置,重启容器

docker exec -it gitlab /bin/bash  进去gitlab容器的命令
gitlab-ctl reconfigure  重置gitlab客户端的命令

由于我们运行是使用数据卷参数进行运行的,宿主机的gitlab.rb文件修改了,gitlab的文件会跟着改,但是容器的文件不会跟着生效,必须要进去容器里面进行命令执行,重置配置文件比较耗费时间,需要耐心等待

docker restart gitlab

5.打开Gitlab

确认使用的域名已经正确解析到对应的IP地址,打开浏览器,输入http://gitlab.orcy.net:8020,如果出现了此界面无问题了,首次登录需要设置root密码

注意:如果此处出现502报错,请检查服务器CPU、内存是否占用满了。502很大程度上是因为CPU、内存耗尽导致

6.创建一个项目

下面我们就可以新建一个项目了,点击【Create a project】

创建完成后:

检查克隆项目的ssh地址是我们使用的域名和之前映射出去的端口

至此!基于docker的gitlab部署已经完成!

*7.常用的几个Gitlab命令

# 重新应用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

Apache带宽流量控制模块mod_bw安装配置教程

目录 原创

1.下载mod_bw

官方下载:http://legacy.ivn.cl/#bandwidth

官方下载的文件在Apache2.4使用需要修改mod_bw.c文件

/* 注意!Apache2.4.* 需要将 remote_addr 修改为 client_addr */

#ifdef APR_MAJOR_VERSION  /* 添加这行 1-2 */
/* Compatibility for APR < 1 */
#if ( defined(APR_MAJOR_VERSION) && (APR_MAJOR_VERSION < 1) )
    #define apr_atomic_inc32 apr_atomic_inc
    #define apr_atomic_dec32 apr_atomic_dec
    #define apr_atomic_add32 apr_atomic_add
    #define apr_atomic_cas32 apr_atomic_cas
    #define apr_atomic_set32 apr_atomic_set
#endif
#endif /* 添加这一行 2-2 */

已经修改好的安装文件下载

下载链接:https://download.csdn.net/download/i12344/12367781

2.安装mod_bw

安装前需要两个准备工作,已centos7为例,需要安装

yum install gcc
yum install httpd-devel
yum install redhat-rpm-config

解压缩mod_bw安装文件

cd mod_bw
 /usr/local/bin/apxs -c -i -a mod_bw.c
 /* apxs 所在位置可能不同,请确认你的httpd-devel安装时apx所在位置 */

3.配置mod_bw

httpd.conf文件中添加一行(一般安装完成后会默认添加)

LoadModule bw_module          modules/mod_bw.so

虚拟主机配置文件添加

<VirtualHost _default_:80>

	DocumentRoot "/var/www/html/test"
	ServerName 192.168.141.189

	<Directory "/var/www/html/test/">
		Options Indexes FollowSymLinks
		AllowOverride None
		Require all granted
	</Directory>
##
#下载速度限制
##
<IfModule mod_bw.c>
	BandWidthModule On
	BandWidth all 512000  ##下载速度限制为512KB
	ForceBandWidthModule On 
	MaxConnection all 4 ##连接数量最多为4个
</IfModule> 


</VirtualHost>

如上图所示为:下载速度 512KB/S、 连接数量最多为4个

4.更多配置选项

BandWidthModule On #开启mod_bw, 限制所有文件类型也开启了
BandWidth all 307200  #所有客户端最大带宽为300k,最大并发连接为100
BandWidth 1.1.1.1 102400 
BandWidth “u:^Mozilla/5(.*)” 102400  #使用FireFox的客户端最大带宽为100k
BandWidth “u:wget” 204800   #使用wget的客户端最大带宽为200k
ForceBandWidthModule On
LargeFileLimit .avi 600 204800  #对超过600k的avi格式的文件最大带宽为200kbyte/s
MaxConnection all 100  #最大连接数为100
MaxConnnection 1.1.1.1 5  #1.1.1.1的最大带宽为100k,最大并发连接为5

更多的配置选项可以参考默认配置文件

5.其他安装方式

如果你用的系统源里边有这个模块,那么可以直接使用yum install 安装

但是注意安装完成后模块加载的路径等问题,如果不注意还是比较坑的,不如源码安装的好,如下图,默认配置文件和实际路径不符

UOS操作系统应用商店软件显示不可用解决方法

目录 原创

UOS bate版应用商店已经无法使用,而且登录会提示账号或密码错误,目前可以使用的版本只有UOS 20和UOS 20 SP1(90天试用期),期待官方早日发布社区版本。

对于20和20SP1应用商店显示为灰色“不可用”的解决办法如下

1.开启【开发者模式】,控制中心 -> 通用 -> 开发者模式,采用【离线激活】的方式,导出机器信息 -> 上传机器信息文件 -> 下载证书文件 -> 导入证书激活

2.激活系统,控制中心 -> 系统信息 -> 激活,选择【试用期激活】

3.打开终端,输入以下命令,等待命令执行完毕

$sudo apt-get update &&  sudo apt-get install deepin-wine

4.再次打开应用商店,应用就会显示可以正常安装了

如果还是显示不可用,在应用商店右上角点击用户图标登录一下账号就可以了!