在虚拟机(docker)上搭建gitlab的记录

部署GitLab Docker容器
本文详细介绍了如何在Linux系统上通过Docker安装和配置GitLab。步骤包括:更新系统包,下载GitLab镜像,创建文件夹以挂载GitLab数据,以及运行带有特定参数的Docker容器。

1 安装docker

yum install docker -y    //-y参数是省略最后确认环节

在安装前,可以使用以下命令,升级相关yum包

yum -y update #升级所有包,同时也升级软件和系统内核
yum -y upgrade #只升级所有包,不升级软件和系统内核

2 下载gitlab镜像

docker pull gitlab/gitlab-ce:latest

3 创建文件夹,用于关联docker内的gitlab相关文件夹

/mnt/gitlab/etc

/mnt/gitlab/log

/mnt/gitlab/data

下面三个文件夹是gitlab中,默认的相关路径下的文件夹

/etc/gitlab   /var/log/gitlab  /var/opt/gitlab

4 执行创建容器的命令

docker run --detach  --publish 8443:443 --publish 8090:80  --name gitlab  --restart unless-stopped --privileged=true  -v /mnt/gitlab/etc:/etc/gitlab   -v /mnt/gitlab/log:/var/log/gitlab  -v /mnt/gitlab/data:/var/opt/gitlab docker.io/gitlab/gitlab-ce:latest

相关参数含义解释

--detach 等同于 -d 作用是 后台执行该命令

--publish 等同于 -p 作用是 创建端口号

ps: --privileged=true  刚开始创建时,没添加此参数,导致容器反复重启,查看docker日志可知,权限不够,故,添加该参数

docker logs  container_id  查看某个容器的日志

 

虚拟机中使用 Docker 配置 GitLab 可按以下步骤进行: ### 环境准备 由于是在本地虚拟机进行搭建,建议虚拟机内存 2G 以上,并且要配置阿里云加速,否则下载速度会很慢[^1]。 ### 下载 GitLab 镜像 有两种方式可以拉取 GitLab 镜像: - 拉取指定版本镜像:使用命令 `docker pull beginor/gitlab-ce:11.0.1-ce.0` 来下载镜像 [^1]。 - 拉取稳定版本镜像:使用命令 `docker pull gitlab/gitlab-ce`,后面不填写版本则默认拉取最新的 `latest` 版本 [^2]。 ### 查看 Docker 镜像仓库 下载完成后,可以使用 `docker images` 命令查看本地的 Docker 镜像仓库 [^1]。 ### 运行 GitLab 容器 使用以下命令启动 GitLab 容器: ```bash docker run \ -itd \ -p 9980:80 \ -p 9922:22 \ -v /home/gitlab/etc:/etc/gitlab \ -v /home/gitlab/log:/var/log/gitlab \ -v /home/gitlab/opt:/var/opt/gitlab \ --restart always \ --privileged=true \ --name gitlab \ gitlab/gitlab-ce ``` 此命令会在后台运行一个名为 `gitlab` 的容器,将容器的 80 端口映射到宿主机的 9980 端口,22 端口映射到宿主机的 9922 端口,并进行了数据卷挂载,同时设置容器自启动 [^3]。 ### 修改配置 修改 HTTP 和 SSH 配置,执行命令 `vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml`,并将配置修改如下: ```yaml gitlab: host: 10.0.0.123 port: 9980 https: false ``` 这里将端口改为 9980 [^4]。 ### 中文版配置(可选) 如果需要使用中文版,可以使用以下 `docker-compose` 配置: ```yaml version: '3' services: web: image: 'twang2218/gitlab-ce-zh:11.0' restart: always hostname: '192.168.73.129' environment: TZ: 'Asia/Shanghai' GITLAB_OMNIBUS_CONFIG: | external_url 'http://192.168.73.129' gitlab_rails['gitlab_shell_ssh_port'] = 2222 unicorn['port'] = 8888 nginx['listen_port'] = 80 ports: - '80:80' - '8443:443' - '2222:22' volumes: - /usr/local/docker/gitlab/config:/etc/gitlab - /usr/local/docker/gitlab/data:/var/opt/gitlab - /usr/local/docker/gitlab/logs:/var/log/gitlab ``` 该配置使用了中文版的 GitLab 镜像,设置了时区和一些端口、URL 等信息 [^5]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值