Docker搭建GitLab
文章目录Docker中安装GitLab在虚拟机cent OS 7上安装docker查看当前的内核版本安装 Docker安装Gitlab安装docker-compose下载docker-compose.yml启动gitlab登录GitlabDocker中安装GitLab在虚拟机cent OS 7上安装docker可以参考:https://www.runoob.com/docker/centos...
文章目录
Docker搭建GitLab
在虚拟机cent OS 7上安装docker
可以参考:https://www.runoob.com/docker/centos-docker-install.html
查看当前的内核版本
Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。
通过 uname -r 命令查看你当前的内核版本
[root@cc ~]# uname -r
3.10.0-957.el7.x86_64
安装 Docker
从 2017 年 3 月开始 docker 在原来的基础上分为两个分支版本: Docker CE 和 Docker EE。
Docker CE 即社区免费版,Docker EE 即企业版,强调安全,但需付费使用。
本文介绍 Docker CE 的安装使用。
移除旧的版本:
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
[root@cc ~]# sudo yum remove docker \
> docker-client \
> docker-client-latest \
> docker-common \
> docker-latest \
> docker-latest-logrotate \
> docker-logrotate \
> docker-selinux \
> docker-engine-selinux \
> docker-engine
已加载插件:fastestmirror, langpacks
参数 docker 没有匹配
参数 docker-client 没有匹配
参数 docker-client-latest 没有匹配
参数 docker-common 没有匹配
参数 docker-latest 没有匹配
参数 docker-latest-logrotate 没有匹配
参数 docker-logrotate 没有匹配
参数 docker-selinux 没有匹配
参数 docker-engine-selinux 没有匹配
参数 docker-engine 没有匹配
不删除任何软件包
[root@cc ~]#
安装一些必要的系统工具:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加软件源信息:
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新 yum 缓存:
sudo yum makecache fast
安装 Docker-ce:
sudo yum -y install docker-ce
启动 Docker 后台服务
sudo systemctl start docker
测试运行 hello-world
docker run hello-world
查看docker 版本
[root@cc ~]# docker version
Client: Docker Engine - Community
Version: 19.03.1
API version: 1.40
Go version: go1.12.5
Git commit: 74b1e89
Built: Thu Jul 25 21:21:07 2019
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.1
API version: 1.40 (minimum version 1.12)
Go version: go1.12.5
Git commit: 74b1e89
Built: Thu Jul 25 21:19:36 2019
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.2.6
GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
runc:
Version: 1.0.0-rc8
GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f
docker-init:
Version: 0.18.0
GitCommit: fec3683
[root@cc ~]#
安装Gitlab
接下来我们就开始我们的重头戏,在docker中安装gitlab。
在docker中安装gitlab的方式有两种,一种是直接用官方提供的gitlab镜像gitlab/gitlab-ce
,只需要这一个镜像就能使用 GitLab。这种安装方式也比较简单便捷。
具体的安装步骤可以去官网看看:https://docs.gitlab.com/ee/install/docker.html 或者网上也有很多教程:https://juejin.im/post/5a4c9ff36fb9a04507700fcc ,这里我就不多介绍了。
但是我更加推荐使用sameersbn 提供的sameersbn/gitlab
,它将GitLab 分成了三个不同的镜像:数据库、日志、GitLab 服务,这样做的好处便于解耦,以及符合 Docker 的设计原理:轻量级、单一的镜像功能。在此,我们使用sameersbn/gitlab
,并结合提供的 Docker Compose 文件来启动 GitLab。
我们可以参考它的github:https://github.com/sameersbn/docker-gitlab
所以本文介绍的就是通过sameersbn 提供的sameersbn/gitlab
去安装gitlab。
安装docker-compose
首先执行以下命令
[root@cc ~]# docker-compose
-bash: docker-compose: 未找到命令
可以发现我们没有安装 docker-compose,所以我们可以参考官网 https://docs.docker.com/compose/install/
然后我们根据官网去安装。
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
[root@cc ~]# docker-compose --version
docker-compose version 1.24.1, build 4667896b
然后我们的docker-compose就安装完成了。
下载docker-compose.yml
下载docker-compose.yml文件下载到本机,参考https://github.com/sameersbn/docker-gitlab 中的Quick Start,我们下载这个文件。
wget https://raw.githubusercontent.com/sameersbn/docker-gitlab/master/docker-compose.yml
启动gitlab
docker-compose up
[root@cc ~]# docker-compose up
Creating network "root_default" with the default driver
Pulling redis (sameersbn/redis:4.0.9-2)...
4.0.9-2: Pulling from sameersbn/redis
84ed7d2f608f: Pull complete
be2bf1c4a48d: Pull complete
a5bdc6303093: Pull complete
e9055237d68d: Pull complete
4dd2cea14658: Pull complete
f8fc4c3c626c: Pull complete
Digest: sha256:959ce87c35a2c2277ba34021b5e1f3139ccdd8a0d40a13cf71e4ac500a0c2070
Status: Downloaded newer image for sameersbn/redis:4.0.9-2
Pulling postgresql (sameersbn/postgresql:10-2)...
10-2: Pulling from sameersbn/postgresql
5b7339215d1d: Pull complete
14ca88e9f672: Pull complete
a31c3b1caad4: Pull complete
b054a26005b7: Pull complete
5f6e1c365669: Pull complete
979542228097: Pull complete
528cc46fecb1: Pull complete
d5bfe52148d6: Pull complete
0e9edf9b0470: Pull complete
73a0cb75af02: Pull complete
Digest: sha256:eb92661187f61289e6ce287774c2e4933149a5d7ab4f35302be609c620746a4d
Status: Downloaded newer image for sameersbn/postgresql:10-2
Pulling gitlab (sameersbn/gitlab:12.0.4)...
12.0.4: Pulling from sameersbn/gitlab
34667c7e4631: Pull complete
d18d76a881a4: Pull complete
119c7358fbfc: Pull complete
2aaf13f3eff0: Pull complete
528402de3115: Pull complete
6bde7bd62c81: Pull complete
d42b0464084a: Pull complete
54e2034f3464: Pull complete
c7f6f9e9642a: Pull complete
Digest: sha256:0b9b73b896de60a065c91aa1e589700752d03230d47dd9cc698e9be900c1a94b
Status: Downloaded newer image for sameersbn/gitlab:12.0.4
Creating root_redis_1 ... done
Creating root_postgresql_1 ... done
Creating root_gitlab_1 ... done
Attaching to root_redis_1, root_postgresql_1, root_gitlab_1
redis_1 | Starting redis-server...
redis_1 | 1:C 11 Aug 05:38:38.141 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
redis_1 | 1:C 11 Aug 05:38:38.141 # Redis version=4.0.9, bits=64, commit=00000000, modified=0, pid=1, just started
redis_1 | 1:C 11 Aug 05:38:38.141 # Configuration loaded
redis_1 | 1:M 11 Aug 05:38:38.146 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
redis_1 | 1:M 11 Aug 05:38:38.146 # Server initialized
redis_1 | 1:M 11 Aug 05:38:38.147 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
redis_1 | 1:M 11 Aug 05:38:38.148 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
postgresql_1 | Initializing datadir...
postgresql_1 | Initializing certdir...
postgresql_1 | Initializing logdir...
postgresql_1 | Initializing rundir...
postgresql_1 | Setting resolv.conf ACLs...
postgresql_1 | Initializing database...
gitlab_1 | Loading /etc/docker-gitlab/runtime/env-defaults
gitlab_1 | Initializing logdir...
gitlab_1 | Initializing datadir...
gitlab_1 | Generating OpenSSH host keys... RSA DSA ECDSA ED25519
gitlab_1 | Installing configuration templates...
gitlab_1 | Configuring gitlab...
postgresql_1 | Configuring hot standby...
postgresql_1 | ‣ Setting postgresql.conf parameter: wal_level = 'hot_standby'
postgresql_1 | ‣ Setting postgresql.conf parameter: max_wal_senders = '16'
postgresql_1 | ‣ Setting postgresql.conf parameter: checkpoint_segments = '8'
postgresql_1 | ‣ Setting postgresql.conf parameter: wal_keep_segments = '32'
postgresql_1 | ‣ Setting postgresql.conf parameter: hot_standby = 'on'
postgresql_1 | ‣ Setting postgresql.conf parameter: data_directory = '/var/lib/postgresql/10/main'
postgresql_1 | ‣ Setting postgresql.conf parameter: log_directory = '/var/log/postgresql'
postgresql_1 | ‣ Setting postgresql.conf parameter: log_filename = 'postgresql-10-main.log'
postgresql_1 | ‣ Setting postgresql.conf parameter: ssl = 'off'
postgresql_1 | Creating database user: gitlab
postgresql_1 | Creating database: gitlabhq_production...
postgresql_1 | ‣ Loading pg_trgm extension...
postgresql_1 | ‣ Granting access to gitlab user...
postgresql_1 | Starting PostgreSQL 10...
postgresql_1 | 2019-08-11 05:38:47.700 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432
postgresql_1 | 2019-08-11 05:38:47.700 UTC [1] LOG: listening on IPv6 address "::", port 5432
postgresql_1 | 2019-08-11 05:38:47.701 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
postgresql_1 | 2019-08-11 05:38:47.719 UTC [208] LOG: database system was shut down at 2019-08-11 05:38:47 UTC
postgresql_1 | 2019-08-11 05:38:47.727 UTC [1] LOG: database system is ready to accept connections
gitlab_1 | Configuring gitlab::database...
gitlab_1 | Configuring gitlab::redis
gitlab_1 | Configuring gitlab::secrets...
gitlab_1 | Configuring gitlab::sidekiq...
gitlab_1 | Configuring gitlab::gitaly...
gitlab_1 | Configuring gitlab::monitoring...
gitlab_1 | Configuring gitlab::gitlab-workhorse...
gitlab_1 | Configuring gitlab::unicorn...
gitlab_1 | Configuring gitlab::timezone...
gitlab_1 | Configuring gitlab::rack_attack...
gitlab_1 | Configuring gitlab::ci...
gitlab_1 | Configuring gitlab::artifacts...
gitlab_1 | Configuring gitlab::lfs...
gitlab_1 | Configuring gitlab::uploads...
gitlab_1 | Configuring gitlab::mattermost...
gitlab_1 | Configuring gitlab::project_features...
gitlab_1 | Configuring gitlab::oauth...
gitlab_1 | Configuring gitlab::ldap...
gitlab_1 | Configuring gitlab::cron_jobs...
gitlab_1 | Configuring gitlab::backups...
gitlab_1 | Configuring gitlab::backups::schedule...
gitlab_1 | Configuring gitlab::registry...
gitlab_1 | Configuring gitlab::pages...
gitlab_1 | Configuring gitlab-shell...
gitlab_1 | Configuring nginx...
gitlab_1 | Configuring nginx::gitlab...
gitlab_1 | Setting up GitLab for firstrun. Please be patient, this could take a while...
gitlab_1 | 2019-08-11 11:08:51,340 CRIT Supervisor running as root (no user in config file)
gitlab_1 | 2019-08-11 11:08:51,340 WARN Included extra file "/etc/supervisor/conf.d/cron.conf" during parsing
gitlab_1 | 2019-08-11 11:08:51,340 WARN Included extra file "/etc/supervisor/conf.d/gitaly.conf" during parsing
gitlab_1 | 2019-08-11 11:08:51,340 WARN Included extra file "/etc/supervisor/conf.d/gitlab-workhorse.conf" during parsing
gitlab_1 | 2019-08-11 11:08:51,340 WARN Included extra file "/etc/supervisor/conf.d/groups.conf" during parsing
gitlab_1 | 2019-08-11 11:08:51,340 WARN Included extra file "/etc/supervisor/conf.d/mail_room.conf" during parsing
gitlab_1 | 2019-08-11 11:08:51,340 WARN Included extra file "/etc/supervisor/conf.d/nginx.conf" during parsing
gitlab_1 | 2019-08-11 11:08:51,340 WARN Included extra file "/etc/supervisor/conf.d/sidekiq.conf" during parsing
gitlab_1 | 2019-08-11 11:08:51,340 WARN Included extra file "/etc/supervisor/conf.d/sshd.conf" during parsing
gitlab_1 | 2019-08-11 11:08:51,340 WARN Included extra file "/etc/supervisor/conf.d/unicorn.conf" during parsing
gitlab_1 | 2019-08-11 11:08:51,386 INFO RPC interface 'supervisor' initialized
gitlab_1 | 2019-08-11 11:08:51,386 CRIT Server 'unix_http_server' running without any HTTP authentication checking
gitlab_1 | 2019-08-11 11:08:51,387 INFO supervisord started with pid 586
gitlab_1 | 2019-08-11 11:08:52,390 INFO spawned: 'gitaly' with pid 600
gitlab_1 | 2019-08-11 11:08:52,392 INFO spawned: 'gitlab-workhorse' with pid 601
gitlab_1 | 2019-08-11 11:08:52,395 INFO spawned: 'unicorn' with pid 602
gitlab_1 | 2019-08-11 11:08:52,397 INFO spawned: 'sidekiq' with pid 603
gitlab_1 | 2019-08-11 11:08:52,401 INFO spawned: 'nginx' with pid 604
gitlab_1 | 2019-08-11 11:08:52,404 INFO spawned: 'sshd' with pid 605
gitlab_1 | 2019-08-11 11:08:52,415 INFO spawned: 'cron' with pid 606
gitlab_1 | 2019-08-11 11:08:53,524 INFO success: gitaly entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:08:53,524 INFO success: gitlab-workhorse entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:08:53,524 INFO success: unicorn entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:08:53,524 INFO success: sidekiq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:08:53,524 INFO success: nginx entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:08:53,524 INFO success: sshd entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:08:53,524 INFO success: cron entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
postgresql_1 | 2019-08-11 05:39:21.944 UTC [218] ERROR: relation "feature_gates" does not exist at character 566
postgresql_1 | 2019-08-11 05:39:21.944 UTC [218] STATEMENT: SELECT a.attname, format_type(a.atttypid, a.atttypmod),
postgresql_1 | pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod,
postgresql_1 | c.collname, col_description(a.attrelid, a.attnum) AS comment
postgresql_1 | FROM pg_attribute a
postgresql_1 | LEFT JOIN pg_attrdef d ON a.attrelid = d.adrelid AND a.attnum = d.adnum
postgresql_1 | LEFT JOIN pg_type t ON a.atttypid = t.oid
postgresql_1 | LEFT JOIN pg_collation c ON a.attcollation = c.oid AND a.attcollation <> t.typcollation
postgresql_1 | WHERE a.attrelid = '"feature_gates"'::regclass
postgresql_1 | AND a.attnum > 0 AND NOT a.attisdropped
postgresql_1 | ORDER BY a.attnum
postgresql_1 |
postgresql_1 | 2019-08-11 05:39:22.181 UTC [219] ERROR: relation "feature_gates" does not exist at character 566
postgresql_1 | 2019-08-11 05:39:22.181 UTC [219] STATEMENT: SELECT a.attname, format_type(a.atttypid, a.atttypmod),
postgresql_1 | pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod,
postgresql_1 | c.collname, col_description(a.attrelid, a.attnum) AS comment
postgresql_1 | FROM pg_attribute a
postgresql_1 | LEFT JOIN pg_attrdef d ON a.attrelid = d.adrelid AND a.attnum = d.adnum
postgresql_1 | LEFT JOIN pg_type t ON a.atttypid = t.oid
postgresql_1 | LEFT JOIN pg_collation c ON a.attcollation = c.oid AND a.attcollation <> t.typcollation
postgresql_1 | WHERE a.attrelid = '"feature_gates"'::regclass
postgresql_1 | AND a.attnum > 0 AND NOT a.attisdropped
postgresql_1 | ORDER BY a.attnum
postgresql_1 |
postgresql_1 | 2019-08-11 05:39:23.699 UTC [220] ERROR: relation "feature_gates" does not exist at character 566
postgresql_1 | 2019-08-11 05:39:23.699 UTC [220] STATEMENT: SELECT a.attname, format_type(a.atttypid, a.atttypmod),
postgresql_1 | pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod,
postgresql_1 | c.collname, col_description(a.attrelid, a.attnum) AS comment
postgresql_1 | FROM pg_attribute a
postgresql_1 | LEFT JOIN pg_attrdef d ON a.attrelid = d.adrelid AND a.attnum = d.adnum
postgresql_1 | LEFT JOIN pg_type t ON a.atttypid = t.oid
postgresql_1 | LEFT JOIN pg_collation c ON a.attcollation = c.oid AND a.attcollation <> t.typcollation
postgresql_1 | WHERE a.attrelid = '"feature_gates"'::regclass
postgresql_1 | AND a.attnum > 0 AND NOT a.attisdropped
postgresql_1 | ORDER BY a.attnum
postgresql_1 |
postgresql_1 | 2019-08-11 05:39:28.120 UTC [223] ERROR: database "gitlabhq_production" already exists
postgresql_1 | 2019-08-11 05:39:28.120 UTC [223] STATEMENT: CREATE DATABASE "gitlabhq_production" ENCODING = 'unicode'
gitlab_1 | Database 'gitlabhq_production' already exists
gitlab_1 | Migrating database...
gitlab_1 | Clearing cache...
gitlab_1 | 2019-08-11 11:10:39,810 WARN received SIGTERM indicating exit request
gitlab_1 | 2019-08-11 11:10:39,810 INFO waiting for gitaly, gitlab-workhorse, unicorn, sidekiq, nginx, sshd, cron to die
gitlab_1 | 2019-08-11 11:10:39,814 INFO stopped: cron (terminated by SIGTERM)
gitlab_1 | 2019-08-11 11:10:39,816 INFO stopped: sshd (exit status 0)
gitlab_1 | 2019-08-11 11:10:39,824 INFO stopped: nginx (exit status 0)
gitlab_1 | 2019-08-11 11:10:42,393 INFO stopped: sidekiq (exit status 0)
gitlab_1 | 2019-08-11 11:10:42,414 INFO stopped: gitlab-workhorse (terminated by SIGTERM)
gitlab_1 | 2019-08-11 11:10:43,062 INFO stopped: unicorn (exit status 0)
gitlab_1 | 2019-08-11 11:10:43,062 INFO waiting for gitaly to die
gitlab_1 | 2019-08-11 11:10:43,080 INFO stopped: gitaly (exit status 0)
gitlab_1 | 2019-08-11 11:10:43,323 CRIT Supervisor running as root (no user in config file)
gitlab_1 | 2019-08-11 11:10:43,323 WARN Included extra file "/etc/supervisor/conf.d/cron.conf" during parsing
gitlab_1 | 2019-08-11 11:10:43,323 WARN Included extra file "/etc/supervisor/conf.d/gitaly.conf" during parsing
gitlab_1 | 2019-08-11 11:10:43,323 WARN Included extra file "/etc/supervisor/conf.d/gitlab-workhorse.conf" during parsing
gitlab_1 | 2019-08-11 11:10:43,323 WARN Included extra file "/etc/supervisor/conf.d/groups.conf" during parsing
gitlab_1 | 2019-08-11 11:10:43,323 WARN Included extra file "/etc/supervisor/conf.d/mail_room.conf" during parsing
gitlab_1 | 2019-08-11 11:10:43,323 WARN Included extra file "/etc/supervisor/conf.d/nginx.conf" during parsing
gitlab_1 | 2019-08-11 11:10:43,323 WARN Included extra file "/etc/supervisor/conf.d/sidekiq.conf" during parsing
gitlab_1 | 2019-08-11 11:10:43,323 WARN Included extra file "/etc/supervisor/conf.d/sshd.conf" during parsing
gitlab_1 | 2019-08-11 11:10:43,323 WARN Included extra file "/etc/supervisor/conf.d/unicorn.conf" during parsing
gitlab_1 | 2019-08-11 11:10:43,335 INFO RPC interface 'supervisor' initialized
gitlab_1 | 2019-08-11 11:10:43,335 CRIT Server 'unix_http_server' running without any HTTP authentication checking
gitlab_1 | 2019-08-11 11:10:43,336 INFO supervisord started with pid 1
gitlab_1 | 2019-08-11 11:10:44,339 INFO spawned: 'gitaly' with pid 807
gitlab_1 | 2019-08-11 11:10:44,341 INFO spawned: 'gitlab-workhorse' with pid 808
gitlab_1 | 2019-08-11 11:10:44,344 INFO spawned: 'unicorn' with pid 809
gitlab_1 | 2019-08-11 11:10:44,361 INFO spawned: 'sidekiq' with pid 813
gitlab_1 | 2019-08-11 11:10:44,363 INFO spawned: 'nginx' with pid 814
gitlab_1 | 2019-08-11 11:10:44,365 INFO spawned: 'sshd' with pid 815
gitlab_1 | 2019-08-11 11:10:44,370 INFO spawned: 'cron' with pid 817
gitlab_1 | 2019-08-11 11:10:45,450 INFO success: gitaly entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:10:45,451 INFO success: gitlab-workhorse entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:10:45,451 INFO success: unicorn entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:10:45,451 INFO success: sidekiq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:10:45,451 INFO success: nginx entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:10:45,451 INFO success: sshd entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
gitlab_1 | 2019-08-11 11:10:45,451 INFO success: cron entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
登录Gitlab
下载完成后,在浏览器输入虚拟机IP地址+端口10080,出现gitlab页面则启动成功
进来修改root用户的密码,之后就可以用root的用户名和密码去登录了。
更多推荐
所有评论(0)