admin管理员组

文章数量:1588267

硬件要求

  • 4核CPU
  • 4G内存

1、使用脚本一键安装

#!/bin/bash

# 适用于在纯净的centos系统中,安装docker

# 1、卸载已有的docker
yum remove docker \
           docker-client \
           docker-client-latest \
           docker-common \
           docker-latest \
           docker-latest-logrotate \
           docker-logrotate \
           docker-selinux \
           docker-engine-selinux \
           docker-engine

#2、安装yum-utils工具
yum install yum-utils
# 3、配置yum docker-ce仓库
yum-config-manager --add-repo http://mirrors.aliyun/docker-ce/linux/centos/docker-ce.repo
# 4、刷新yum仓库缓存
yum makecache fast
# 5、安装docker-ce
yum install docker-ce -y
# 6、启动docker和设置docker自启动
systemctl enable docker
systemctl start docker
# 7、使用hello-world镜像测试docker是否成功安装
docker run hello-world

附件备注:卸载干净docker以及安装docker18版本

卸载
1.查询安装过的包
yum list installed | grep docker
2.删除安装的软件包
yum -y remove docker-engine.x86_64
3.删除镜像/容器等
rm -rf /var/lib/docker

2、配置镜像加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://8cqoh10g.mirror.aliyuncs"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

 3、安装私有仓库

# 拉取镜像
docker pull registry

# 创建容器
docker run -d -p 5000:5000 registry

#配置私有仓库地址
vim /etc/docker/daemon.json
{
  "insecure-registries": ["192.168.200.133:5000"]
}

sudo systemctl daemon-reload
sudo systemctl restart docker

#启动本地仓库容器
docker start 容器ID

4、访问私有仓库

http://192.168.200.133:5000/v2/_catalog

如果访问不到,关闭防火墙:

systemctl stop firewalld

docker下gitlab安装配置使用

1、安装        

#本机建立的3个目录
#为了gitlab容器通过挂载本机目录启动后可以映射到本机,然后后续就可以直接在本机查看和编辑了,不用再进容器操作
#配置文件

mkdir -p /home/software/gitlab/etc
mkdir -p /home/software/gitlab/logs
mkdir -p /home/software/gitlab/data

docker pull jinbian/gitlab:1 

#启动容器
docker run \
--detach \
--publish 8443:443 \
--publish 8090:80 \
--publish 8022:22 \
--name gitlab \
--restart always \
--hostname 47.115.137.183 \
-v /home/software/gitlab/etc:/etc/gitlab \
-v /home/software/gitlab/logs:/var/log/gitlab \
-v /home/software/gitlab/data:/var/opt/gitlab \
-v /etc/localtime:/etc/localtime:ro \
--privileged=true jinbian/gitlab:1

#查看启动日志
docker logs -f gitlab

2、配置

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

3、初始化密码

访问gitlab(公网ip+8090端口)页面.重置密码

 

gitlab部署文档

从官网拉取并运行镜像

运行前,注意宿主机已经开放的端口是否与docker映射端口冲突,合理规划端口

~]# cd /data/gitlab
gitlab]# docker run --detach -p 8443:443 -p 380:80 -p 322:22 --name gitlab --restart unless-stopped  -v `pwd`/config:/etc/gitlab -v `pwd`/log:/var/log/gitlab -v `pwd`/data:/var/opt/gitlab  beginor/gitlab-ce:11.0.1-ce.0

注: pwd为位置变量,表示当前位置

Gitlab界面登录

http://ip:380

登录账户为root
查看Gitlab登录的用户

备份与恢复备份

vi /data/gitlab/config/gitlab.rb
gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
gitlab_rails['backup_keep_time'] = 604800

0 2 1,15 * * /data/gatlab/gitlabback.sh >/dev/null 2>&1

vi gitlabback.sh

#!/bin/bash
docker exec github /opt/gitlab/bin/gitlab-rake gitlab:backup:create >/dev/null 2>&1
scp -p 250 /data/gitlab/data/backups/*.tar 192.168.0.8:/home/gitlab-back >/dev/null 2>&1

备份恢复

mv 1639387305_2021_12_13_11.0.1_gitlab_backup.tar /data/gitlab/data/backups
chmod +x 1639387305_2021_12_13_11.0.1_gitlab_backup.tar
docker exec -it gitlab bash
cd /var/opt/gitlab/backups
gitlab-rake gitlab:backup:restore BACKUP=1639387305_2021_12_13_11.0.1

后面再输入两次yes就完成恢复了。

4.gitlab忽略配置文件合并

A分支有一个文件a.js
B分支也有这个文件a.js
合并分支时,我不想这两个文件合并,保持各自的原样就好.
即便我设置了.gitattributes中a.js merge=ours,他们还是会合并,只是有冲突时以当前分支的为准.
我要的效果是,不管我在A分支怎么修改a.js,B分支合并A分支时,B分支的a.js保持原样.

vi .gitignore

/rantserver/.gitignore
/rantserver/target

/rantserver/src/main/resources/application.yml
/rantserver/src/main/resources/static/wx/jx/common.js
/rantserver/src/main/resources/static/h5/js/url.js
/rantserver/src/main/java/com/redant/www/platform/util\base\ConfigUtil.java

git clone push指定用户名和密码
git clone http://邮箱(或用户名):密码@仓库 分支
git clone http://deploy:'xxx2032!'@git.ienjoys/age/frontend/packages.git -b 0.1.0
git push http://邮箱(或用户名):密码@仓库 分支

本文标签: DockerGitLab