docker安装gitlab

官方教程 

https://docs.gitlab.com/omnibus/docker/


docker安装相关教程文档:

https://www.cnblogs.com/reasonzzy/p/11145026.html




建议虚拟机内存2G以上

搜索镜像

docker search gitlab


下载镜像文件

docker pull docker.io/gitlab/gitlab-ce


注意:一定要配置阿里云的加速镜像

                     创建GitLab 的配置 (etc) 、 日志 (log) 、数据 (data) 放到容器之外, 便于日后升级, 因此请先准备这三个目录。

mkdir -p /mnt/gitlab/etc

mkdir -p /mnt/gitlab/log

mkdir -p /mnt/gitlab/data



创建容器之前,我们先关闭下防火墙,重启docker服务

systemctl stop firewalld.service

firewall-cmd --state

systemctl daemon-reload

systemctl stop firewalld.service



运行GitLab容器 

docker run \--detach \--publish 2222:22 \--publish 8090:80 \--publish 8443:443 \--hostname 192.168.56.3 \-v /mnt/gitlab/etc:/etc/gitlab \-v /mnt/gitlab/log:/var/log/gitlab \-v /mnt/gitlab/data:/var/opt/gitla \-v /etc/localtime:/etc/localtime:ro \--name gitlab \--restart always \--privileged=truegitlab/gitlab-ce:latest


 运行成功之后,将挂载文件同步到容器外面

修改/mnt/gitlab/etc/gitlab.rb

把external_url改成部署机器的域名或者IP地址

vi /mnt/gitlab/etc/gitlab.rb


external_url 'http://192.168.56.3'


按 i 进行编辑,编辑好了按Esc,:wq 进行保存

修改/mnt/gitlab/data/gitlab-rails/etc/gitlab.yml

vi /mnt/gitlab/data/gitlab-rails/etc/gitlab.yml

找到关键字 * ## Web server settings *

按斜杠进行搜索

/Web server settings



我们进到目录再看一下挂载文件是否同步到外面来了

[root@localhost ~]# cd /mnt/gitlab/etc/[root@localhost etc]# ls

gitlab.rb            ssh_host_ecdsa_key      ssh_host_ed25519_key      ssh_host_rsa_key      trusted-certs

gitlab-secrets.json  ssh_host_ecdsa_key.pub  ssh_host_ed25519_key.pub  ssh_host_rsa_key.pub



这个时候我们把容器停止再删除,然后重启服务

[root@localhost ~]# docker stop 3f3d49ac7888aaf51d51761c27f92e4bf1b465f76b1a58f3428637b9c3ffd9b7

3f3d49ac7888aaf51d51761c27f92e4bf1b465f76b1a58f3428637b9c3ffd9b7

[root@localhost ~]# docker rm 3f3d49ac7888aaf51d51761c27f92e4bf1b465f76b1a58f3428637b9c3ffd9b7

3f3d49ac7888aaf51d51761c27f92e4bf1b465f76b1a58f3428637b9c3ffd9b7

[root@localhost ~]# systemctl restart docker

[root@localhost ~]#


再来重新创建容器

docker run \

--detach \

--publish 2222:22 \

--publish 8090:80 \

--publish 8443:443 \

--hostname 192.168.56.3 \

-v /mnt/gitlab/etc:/etc/gitlab \

-v /mnt/gitlab/log:/var/log/gitlab \

-v /mnt/gitlab/data:/var/opt/gitla \

-v /etc/localtime:/etc/localtime:ro \

--name gitlab \

--restart always \

--privileged=true gitlab/gitlab-ce:latest


这个时候我们来查一下,看一下容器有没有分配ip地址,有的话表示创建容器成功了。

[root@localhost ~]# docker ps

CONTAINER ID        IMAGE                          COMMAND                  CREATED              STATUS              PORTS                                                NAMES

d07898b3749d        gitlab/gitlab-ce                "/assets/wrapper"        About a minute ago  Up Less than a second (health: starting)  22/tcp, 0.0.0.0:8090->80/tcp, 0.0.0.0:8443->443/tcp  gitlab

f264e5f1be41        sonatype/nexus3                "sh -c ${SONATYPE_DI…"  2 hours ago          Up 2 hours              0.0.0.0:8081->8081/tcp                                nexus

[root@localhost ~]# docker inspect d07898b3749d



访问一下ip地址

[root@localhost ~]# curl 172.17.0.3:80

curl: (7) Failed connect to 172.17.0.3:80; Connection refused


拒绝连接,说明启动没有那么快,还需要一些时间

关闭防火墙,查看下状态,这个时候防火墙已经关闭了。

[root@localhost ~]# systemctl stop firewalld.service

[root@localhost ~]# firewall-cmd --state

not running

[root@localhost ~]#


 查看了下容器状态,发现gitlab一直是重启状态

[root@localhost ~]# docker ps

CONTAINER ID        IMAGE                          COMMAND                  CREATED            STATUSPORTS                    NAMES

d07898b3749d        gitlab/gitlab-ce:latest  "/assets/wrapper"        19 minutes ago      Restarting (1) 1 second ago    gitlab


查看日志

sudo docker logs gitlab



错误就不在这里演示了,通过谷歌解决了我的问题,

解决好之后重启下服务跟gitlab

重新验证,好了




等个几分钟,重新刷新下页面


docker安装gitlab命令

docker run \

--detach \

--publish 2222:22 \

--publish 8890:8890 \

--publish 8443:8443 \

--hostname 192.168.224.129:8890 \

-v /mnt/gitlab/etc:/etc/gitlab \

-v /mnt/gitlab/log:/var/log/gitlab \

-v /mnt/gitlab/data:/var/opt/gitla \

-v /etc/localtime:/etc/localtime:ro \

--name gitlab \

--restart always \

--privileged=true gitlab/gitlab-ce:latest

修改相关的配置

vi /mnt/gitlab/etc/gitlab.rb

// 修改如下语句

external_url 'http://192.168.2.102:82'

# https需要下面这句

# nginx['redirect_http_to_https_port'] = 82

nginx['listen_port'] = 82//http对外映射的端口

# 配置2222端口

gitlab_rails['gitlab_shell_ssh_port'] = 2222//配置ssh对外的端口

gitlab_rails['gitlab_ssh_host'] = '192.168.1.92'  //ssh的地址

你可能感兴趣的:(docker安装gitlab)