linux - 将自定义 Hook 添加到使用 Docker 安装的 Gitlab

标签 linux docker ubuntu gitlab

我使用 Docker 在我的服务器上安装了 gitlab。 我想访问 gitlab 本地存储库,以便为每个项目创建自定义 Hook 。

问题是我在我的服务器上的任何地方都找不到 gitlab 本地存储库。

最佳答案

您当前的运行命令是:

docker run --detach --name gitlab \
   --hostname gitlab.example.com \
   --publish 30080:30080 \
   --publish 30022:22 \
   --env GITLAB_OMNIBUS_CONFIG="external_url 'gitlab.example.com:30080';; gitlab_rails['gitlab_shell_ssh_port']=30022;" \
   gitlab/gitlab-ce:9.1.0-ce.0"

此命令不包含任何外部卷挂载,因此我建议为 GitLab 创建一个本地数据目录,并包含卷挂载,以便 GitLab 使用本地存储作为后备数据库和存储库。

请注意,如果您在运行的实例中创建了内容(没有卷装载),那么如果容器被删除,它可能会丢失。

创建本地目录(您可以使用不同的路径):

mkdir -p /gitlab/data
mkdir -p /gitlab/config
mkdir -p /gitlab/logs

将卷挂载添加到您的 docker 命令:

docker run --detach --name gitlab \
   --hostname gitlab.example.com \
   --publish 30080:30080 \
   --publish 30022:22 \
   --volume /gitlab/config:/etc/gitlab \
   --volume /gitlab/logs:/var/log/gitlab \
   --volume /gitlab/data:/var/opt/gitlab \
   --env GITLAB_OMNIBUS_CONFIG="external_url 'gitlab.example.com:30080';; gitlab_rails['gitlab_shell_ssh_port']=30022;" \
   gitlab/gitlab-ce:9.1.0-ce.0"

这将为您的 gitlab 服务器创建持久卷。

启动服务器并创建项目后,您将在数据目录中找到您的存储库。

关于linux - 将自定义 Hook 添加到使用 Docker 安装的 Gitlab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52042698/

相关文章:

docker - gRPC 名称解析失败

Python:导入 autobahn_autoreconnect 导致 RuntimeError

ruby - apt-get install overwrite ruby​​ on docker of ubuntu14.04

linux - 合并两个文件夹并保持文件同名

python - 使用python检查ubuntu中的dd状态

docker - docker-compose的背景/前景

docker - 在单台机器上自动部署dockerized应用程序

linux - GTK/Qt On PLT 方案

linux - 在 Ubuntu Server (Linux) 中使用 rm 时如何更改错误消息

ubuntu - 在没有窗口 8.1 的情况下与 ubuntu 一起重新安装