何亚斌

Docker 部署 Gitlab 代码服务器
使用 Docker 部署 Gitlab 代码托管服务器  搞软件开发少不了代码托管及版本控制,...
扫描右侧二维码阅读全文
16
2019/02

Docker 部署 Gitlab 代码服务器

使用 Docker 部署 Gitlab 代码托管服务器

  搞软件开发少不了代码托管及版本控制,尤其是多人协作项目中更是少不了代码合并。在使用 git 之前,自己的代码总是隔段时间以"项目名称_XXXX年xx月xx日.tar.gz"这样的方式进行备份 。使用 git 进行版本控制后,自己再也不用担心代码改乱掉。平常主要使用的 git 代码托管平台为 GitHub阿里云 Code ,后来自己购买了 HPE ProLiant MicroServer Gen8 ,便使用 Docker 搭建了一个本地的代码托管服务器 Gitlab 。具体搭建步骤如下:


一、创建数据存放目录

这里将 Gitlab 数据存放至 /home/pbversion/Gitlab/ 目录下,如需更换目录以下对应位置自行替换,确保其具有读写权限。

mkdir -p /home/pbversion/Gitlab/config
mkdir -p /home/pbversion/Gitlab/logs
mkdir -p /home/pbversion/Gitlab/data

该 Gitlab 数据存放目录切不可删除!!!
后期做服务器迁移时该目录务必保证其完整性,除非您真的不想要这些数据。


二、导入 Gitlab 官方 Docker 镜像

docker pull gitlab/gitlab-ce:11.1.4-ce.0

11.1.4-ce.0 为发布版本号,可根据需要自行替换相应版本号。


三、启动 Docker 镜像

docker run --name gitlab \
    --detach \
    --restart always \
    --hostname 192.168.11.249 \
    --env GITLAB_OMNIBUS_CONFIG="external_url 'http://192.168.11.249:10080'; gitlab_rails['lfs_enabled'] = true; gitlab_rails['gitlab_shell_ssh_port'] = 10022;" \
    --publish 10443:443 --publish 10080:10080 --publish 10022:22 \
    --volume /home/pbversion/Gitlab/config:/etc/gitlab \
    --volume /home/pbversion/Gitlab/logs:/var/log/gitlab \
    --volume /home/pbversion/Gitlab/data:/var/opt/gitlab \
    --privileged=true \
    gitlab/gitlab-ce:11.1.4-ce.0

192.168.11.249 为服务器访问IP地址,若有对应域名可使用域名,该字段根据自己实际情况设置。
对外开放的访问端口: 10080 为 http 访问端口; 10022 为 ssh 访问端口; 10443 为 https 访问端口。可根据需要自行更改相应端口。
11.1.4-ce.0 为启动的 Gitlab 的 Docker 镜像版本号,升级版本自行替换对应的镜像版本号。


四、升级 Gitlab 服务版本

1. 先停止并删除正在运行的 gitlab 的 Docker 镜像运行实例

docker stop gitlab
docker rm gitlab

2. 参考上述步骤二下载要升级替换的 Gitlab 镜像版本

docker pull gitlab/gitlab-ce:latest

这里举例替换为官方最新构建版本 latest 。

3. 参考上述步骤三启动对应升级后的 Gitlab 镜像


五、故障维护

1. 查看容器运行状态

(下图中标示的绿色下划线代表状态,蓝色下划线代表容器名称)
常看容器运行状态.png

2. 查看异常的容器启动运行日志,根据日志查看对应运行状态或相关故障信息

docker logs gitlab

3. 当启动失败可以简单尝试重新启动容器,具体步骤如下

  1. 参考上述步骤四 .1 先停止并删除正在运行的 gitlab 的 Docker 镜像运行实例。
  2. 参考上述步骤三重新启动新的 gitlab 的 Docker 镜像运行实例。

六、其他帮助信息

遇到其他一些问题或者需要配置其他一些功能可参考官方帮助文档

Last modification:February 24th, 2019 at 10:59 pm

Leave a Comment