我搜索了很多,发现GitLab Community Edition
上没有安装Windows
所以现在我想在Docker的帮助下安装它。我不知道这是可能的,我怎么做?
答案 0 :(得分:6)
是的,您可以使用Docker在Windows上运行gitlab-ce。首先,确保在Windows上安装了docker,否则install it。
有关如何使用Docker运行gitlab的详细文档可在GitLab Docker images下找到,包括如何访问Web界面。
答案 1 :(得分:5)
然后你需要在驱动器e上创建3个目录:(e:\ gitlab \ config,e:\ gitlab \ logs,e:\ gitlab \ data)
那就是它。你已经运行了Gitlab图像。
答案 2 :(得分:1)
我在这里找到了解决方案,在Windows版Docker中安装时存在与卷相关的问题
答案 3 :(得分:1)
您可以从 Expose GitLab on different ports 部分查看 gitlab 文档。
在开始安装之前,在“”中创建 3 个文件夹,分别命名为“config”、“data”、“logs” gitlab”文件夹。并使用 docker run 命令运行您的 gitlab-ce 映像。Gitlab 应该首先运行。
<块引用>注意,我将使用 8082 端口作为 gitlab 服务器。您可以使用任何端口号更改它。
1-打开 cmd 并显示您的 IP 地址:
ipconfig
2-使用此命令运行您的 docker-ce 映像:
docker run --detach --hostname YOUR-IP-ADRESS --publish 8082:8082 --publish 2282:22 --name gitlab --restart always --volume D:\DevOps\Gitlab/config:/etc/gitlab --volume D:\DevOps\Gitlab/logs:/var/log/gitlab --volume D:\DevOps\Gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest
3-在 docker 终端(在 docker gui 应用程序中按“cli”按钮)到这里:
cd etc/gitlab
nano gitlab.rb
4-转到 gitlab.rb 文件的末尾并写下这些行:
external_url "http://your-ip-address:8082"
gitlab_rails['gitlab_shell_ssh_port'] = 2282
5-保存并关闭 gitlab.rb 文件后,输入此代码进行重新配置:
gitlab-ctl reconfigure
6-删除您的 docker 容器并再次使用此命令运行:
docker run --detach --hostname YOUR-IP-ADRESS --publish 8082:8082 --publish 2282:22 --name gitlab --restart always --volume D:\DevOps\Gitlab/config:/etc/gitlab --volume D:\DevOps\Gitlab/logs:/var/log/gitlab --volume D:\DevOps\Gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest
答案 4 :(得分:0)
使用以下 docker-compose 文件:
web:
image: 'gitlab/gitlab-ce:13.7.1-ce'
restart: always
hostname: 'localhost'
environment:
GITLAB_OMNIBUS_CONFIG: |
#KO gitlab_rails['initial_root_password'] = 'adminadmin'
gitlab_rails['gitlab_shell_ssh_port'] = 2222
external_url 'http://localhost'
ports:
- '8185:80'
- '1443:443'
- '2222:22'
volumes:
- '/srv/gitlab/config:/etc/gitlab'
- '/srv/gitlab/logs:/var/log/gitlab'
#important here: do not mount /var/opt/gitlab but /var/opt as stated here:
# https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/2280
- '/srv/gitlab/data:/var/opt'
执行 (cygwin) docker ps | grep gitlab
直到显示状态(健康),然后在 http://localhost:8185 处打开浏览器
如果你第一次没有被要求修改root密码, 像这样设置(cygwin):
docker exec -it $(docker ps | grep gitlab | awk '{print $1}') bash
root@dev:/# gitlab-rails console -e production
--------------------------------------------------------------------------------
Ruby: ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-linux]
GitLab: 13.12.5 (f37a805b0b4) FOSS
GitLab Shell: 13.18.0
PostgreSQL: 12.6
--------------------------------------------------------------------------------
Loading production environment (Rails 6.0.3.6)
irb(main):001:0> user = User.where(id: 1).first => #<User id:1 @root>
irb(main):002:0> user.password = 'adminadmin' => "adminadmin"
irb(main):003:0> user.password_confirmation = 'adminadmin' => "adminadmin"
irb(main):004:0> user.save Enqueued ActionMailer::MailDeliveryJob (Job ID: d5dce701-2a79-4bed-b0a4-2abb877c2081) to Sidekiq(mailers) with arguments: "DeviseMailer", "password_change", "deliver_now", {:args=>[#<GlobalID:0x00007f621582b210 @uri=#<URI::GID gid://gitlab/User/1>>]}
=> true
irb(main):005:0> exit
然后登录,创建一个用户,给他一个第一个密码,用它登录更新密码,创建一个项目,并使用项目的git url而不是http,因为使用端口似乎对http url产生了一些麻烦。可能需要生成公共私钥/密钥并在 gitlab 中注册公共密钥