一、部署gitlab
1.基于docker-compose环境部署gitlab
[root@jenkins-ap1 gitlab]# cat docker-compose.yml
web:
image: 'gitlab/gitlab-ce:latest'
restart: always
hostname: 'docker-ap1'
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'https://gitlab.starz.top'
# Add any other gitlab.rb configuration here, each on its own line
ports:
- '80:80'
- '443:443'
- '2222:22'
volumes:
- '$GITLAB_HOME/config:/etc/gitlab'
- '$GITLAB_HOME/logs:/var/log/gitlab'
- '$GITLAB_HOME/data:/var/opt/gitlab'
[root@jenkins-ap1 gitlab]# nohup docker-compose up & #部署容器
2. 默认密码查看
[root@jenkins-ap1 gitlab]# docker exec -it gitlab_web_1 grep 'Password:' /etc/gitlab/initial_root_password
3. 设置ssh-key

[root@jenkins-ap1 gitlab]# ssh-keygen #生成ssh密钥
[root@jenkins-ap1 gitlab]# cat /root/.ssh/id_rsa.pub #将cat到的内容复制到

二、gitlab的使用
1.新建项目



创建后会得到一个默认为main分支的代码仓库

2. 上传代码
首先拉去仓库
[root@client 2022-07-08]# git clone ssh://git@gitlab.starz.top:2222/root/test0708
Cloning into 'test0708'...
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (3/3), done.
[root@client 2022-07-08]# cd test0708/ #打开拉去的仓库文件名称的文件夹
[root@client test0708]# ls
README.md
[root@client test0708]# mv ../test/* . #将需要上传的代码移动到文件夹内
mv: overwrite ‘./README.md’? y
[root@client test0708]# ls -lrth
total 44K
-rw-r--r-- 1 root root 40 Jul 8 14:46 run.sh
-rw-r--r-- 1 root root 64 Jul 8 14:46 README.md
-rw-r--r-- 1 root root 1.1K Jul 8 14:46 pom.xml
-rw-r--r-- 1 root root 202 Jul 8 14:46 manifest.yml
-rw-r--r-- 1 root root 1.5K Jul 8 14:46 k8s.yaml
-rw-r--r-- 1 root root 3.7K Jul 8 14:46 Jenkinsfile
-rw-r--r-- 1 root root 154 Jul 8 14:46 Dockerfile
-rw-r--r-- 1 root root 5.6K Jul 8 14:46 dev-test.kubeconfig
-rw-r--r-- 1 root root 5.6K Jul 8 14:46 starz.kubeconfig
drwxr-xr-x 3 root root 18 Jul 8 14:46 src
[root@client test0708]# git add . #git add命令加入全部上传
[root@client test0708]# git commit -m "upload" #git commit命令提交 -m是指这次提交的标识
[main 14d958b] upload
10 files changed, 252 insertions(+), 1 deletion(-)
create mode 100644 Dockerfile
create mode 100644 Jenkinsfile
create mode 100644 dev-test.kubeconfig
create mode 100644 k8s.yaml
create mode 100644 manifest.yml
create mode 100644 pom.xml
create mode 100644 run.sh
create mode 100644 src/main/java/Example.java
create mode 100644 starz.kubeconfig
[root@client test0708]# git branch master main #复制main分支到master
[root@client test0708]# git push origin master #push到master分支
Counting objects: 17, done.
Compressing objects: 100% (11/11), done.
Writing objects: 100% (15/15), 11.15 KiB | 0 bytes/s, done.
Total 15 (delta 0), reused 0 (delta 0)
remote:
remote: To create a merge request for master, visit:
remote: https://gitlab.starz.top/root/test0708/-/merge_requests/new?merge_request%5Bsource_branch%5D=master
remote:
To ssh://git@gitlab.starz.top:2222/root/test0708
* [new branch] master -> master


代码已经上传完毕
3. 分支管理
将master分支设置为默认分支


删除main分支

取消main分支的保护

删除


完成

原创文章,作者:admin,如若转载,请注明出处:https://www.starz.top/2022/07/08/devops%e7%b3%bb%e5%88%97-gitlab%e7%9a%84%e9%83%a8%e7%bd%b2%e5%92%8c%e5%8f%82%e6%95%b0%e8%ae%be%e7%bd%ae/