硬件要求
- 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.com/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.com"]
}
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界面登录
登录账户为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.cn/age/frontend/packages.git -b 0.1.0
git push http://邮箱(或用户名):密码@仓库 分支