首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法向在正式码头容器中运行的gitlab发出请求

无法向在正式码头容器中运行的gitlab发出请求
EN

Stack Overflow用户
提问于 2017-07-26 14:03:13
回答 1查看 2K关注 0票数 4

我正在尝试使用给定的这里指令从Docker ( gitlab /gitlab,最新)容器中运行gitlab。

码头版本

代码语言:javascript
复制
Docker version 1.12.4, build 1564f02

我第一次跑

代码语言:javascript
复制
docker run --detach --hostname <myIP> --publish 8000:443--publish 8001:80 --publish 8002:22 --name gitlab --restart always --volume /docker/app/gitlab/config:/etc/gitlab --volume /docker/app/gitlab/logs:/var/log/gitlab --volume /docker/app/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest

然后,我编辑了容器的/etc/gitlab/gitlab.rb以设置

代码语言:javascript
复制
external_url 'http://<myIP>:8001'
gitlab_rails['gitlab_shell_ssh_port'] = 8002

然后,我用

代码语言:javascript
复制
docker restart gitlab

现在。

当我试图连接到<myIP>:8001时,我得到了一个(110) Connection timed out

当我尝试从码头集装箱的主机,我得到

代码语言:javascript
复制
xxx@xxx:~$ curl localhost:8001
curl: (56) Recv failure: Connection reset by peer

日志(就在最后)

代码语言:javascript
复制
==> /var/log/gitlab/gitlab-workhorse/current <==
2017-07-26_14:53:41.50465 localhost:8001 @ - - [2017-07-26 14:53:41.223110228 +0000 UTC] "GET /help HTTP/1.1" 200 33923 "" "curl/7.53.0" 0.281484

==> /var/log/gitlab/nginx/gitlab_access.log <==
127.0.0.1 - - [26/Jul/2017:14:53:41 +0000] "GET /help HTTP/1.1" 200 33967 "-" "curl/7.53.0"

==> /var/log/gitlab/gitlab-monitor/current <==
2017-07-26_14:53:47.27460 ::1 - - [26/Jul/2017:14:53:47 UTC] "GET /sidekiq HTTP/1.1" 200 3399
2017-07-26_14:53:47.27464 - -> /sidekiq
2017-07-26_14:53:49.22004 ::1 - - [26/Jul/2017:14:53:49 UTC] "GET /database HTTP/1.1" 200 42025
2017-07-26_14:53:49.22007 - -> /database
2017-07-26_14:53:51.48866 ::1 - - [26/Jul/2017:14:53:51 UTC] "GET /process HTTP/1.1" 200 7132
2017-07-26_14:53:51.48873 - -> /process

==> /var/log/gitlab/gitlab-rails/production.log <==
Started GET "/-/metrics" for 127.0.0.1 at 2017-07-26 14:53:55 +0000
Processing by MetricsController#index as HTML
Filter chain halted as :validate_prometheus_metrics rendered or redirected
Completed 404 Not Found in 1ms (Views: 0.7ms | ActiveRecord: 0.0ms)

码头工人ps

代码语言:javascript
复制
xxx@xxx:~$ docker ps
CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS                       PORTS                                                               NAMES
67e013741b6d        gitlab/gitlab-ce:latest   "/assets/wrapper"        2 hours ago         Up About an hour (healthy)   0.0.0.0:8002->22/tcp, 0.0.0.0:8001->80/tcp, 0.0.0.0:8000->443/tcp   gitlab

Netstat

代码语言:javascript
复制
xxx@xxx:~$ netstat --listen
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 localhost:smtp          *:*                     LISTEN     
tcp        0      0 *:2020                  *:*                     LISTEN     
tcp        0      0 *:git                   *:*                     LISTEN     
tcp        0      0 *:43918                 *:*                     LISTEN     
tcp        0      0 *:sunrpc                *:*                     LISTEN     
tcp6       0      0 localhost:smtp          [::]:*                  LISTEN     
tcp6       0      0 [::]:8000               [::]:*                  LISTEN     
tcp6       0      0 [::]:8001               [::]:*                  LISTEN     
tcp6       0      0 [::]:8002               [::]:*                  LISTEN     
tcp6       0      0 [::]:2020               [::]:*                  LISTEN     
tcp6       0      0 [::]:git                [::]:*                  LISTEN     
tcp6       0      0 [::]:sunrpc             [::]:*                  LISTEN     
tcp6       0      0 [::]:http               [::]:*                  LISTEN     
tcp6       0      0 [::]:43730              [::]:*                  LISTEN     
udp        0      0 *:54041                 *:*                                
udp        0      0 *:sunrpc                *:*                                
udp        0      0 *:snmp                  *:*                                
udp        0      0 *:958                   *:*                                
udp        0      0 localhost:969           *:*                                
udp        0      0 *:37620                 *:*                                
udp6       0      0 [::]:54611              [::]:*                             
udp6       0      0 [::]:sunrpc             [::]:*                             
udp6       0      0 localhost:snmp          [::]:*                             
udp6       0      0 [::]:958                [::]:* 

我找不到出什么问题了。有人能帮忙吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-26 14:53:58

这是一个对我来说很好的docker-compose.yml

代码语言:javascript
复制
version: '2'
services:
  gitlab:
    image: gitlab/gitlab-ce:latest
    ports:
      - "8002:22"
      - "8000:8000"
      - "8001:443"
    environment:
      - "GITLAB_OMNIBUS_CONFIG=external_url 'http://192.168.33.100:8000/'"
    volumes:
      - ./config:/etc/gitlab
      - ./logs:/var/log/gitlab
      - ./data:/var/opt/gitlab

问题是,当您将外部url配置为<MyIP>:8000时,容器中的侦听端口也会被更新为8000。在您的示例中,您将端口8000映射到80,并且应该只将8000映射到8000

有关相同的详细信息,请阅读下面的url。

https://docs.gitlab.com/omnibus/settings/nginx.html#setting-the-nginx-listen-port

如果您需要覆盖这个端口,那么可以在gitlab.rb中这样做。

代码语言:javascript
复制
nginx['listen_port'] = 8081

我更喜欢使用docker-compose文件而不是命令启动Gitlab,因为它很容易配置、启动、重新启动gitlab

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45329240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档