1. 程式人生 > >恢復虛擬機器時,Docker中的GitLab無法訪問

恢復虛擬機器時,Docker中的GitLab無法訪問

一、問題

最近在VMware恢復掛起虛擬機器時,GitLab無法訪問

二、查詢原因

  1. 在區域網的其他主機上訪問gitLab的都超時

  2. 嘗試在安裝gitlab的虛擬機器上訪問

    $ curl 192.168.25.140
    <html><body>You are being <a href="http://192.168.25.140/users/sign_in">redirected</a>.</body></html>
    

    有登入頁面訪問,說明docker容器是沒有問題的

  3. 使用netstat -ntlp命令檢視埠

    $ netstat -ntlp
    Proto Recv-Q Send-Q Local Address     Foreign Address  State       PID/Program name    
    tcp        0      0 0.0.0.0:22        0.0.0.0:*        LISTEN      3847/sshd           
    tcp        0      0 127.0.0.1:25      0.0.0.0:*        LISTEN      4077/master         
    tcp6       0      0 :::2224           :::*             LISTEN      53495/docker-proxy  
    tcp6       0      0 :::80             :::*            LISTEN      53484/docker-proxy  
    tcp6       0      0 :::22             :::*            LISTEN      3847/sshd           
    tcp6       0      0 ::1:25            :::*            LISTEN      4077/master         
    tcp6       0      0 :::443            :::*            LISTEN      53469/docker-proxy 
    

    可以看到監聽的是tcp的ipv6的埠,所以需要配置ipv4

    vim /etc/sysctl.conf
    
    #配置轉發
    net.ipv4.ip_forward=1
    
    #重啟服務,讓配置生效
    systemctl restart network
    
    #檢視是否成功,如果返回為“net.ipv4.ip_forward = 1”則表示成功
    
    sysctl net.ipv4.ip_forward
    

    重新訪