Maison  >  Questions et réponses  >  le corps du texte

docker gitlab 如何git clone?

它给的SSH和http地址是这样的:

git@6b30d4a6a162:compontent/gitlab-test-component.git
http://6b30d4a6a162/compontent/gitlab-test-component.git

6b30d4a6a162是gitlab的container Info的ID的一部分:

6b30d4a6a16279326a135ee2c7bf7b20094b3199a299ac6345735dd3

我通过上面两个地址都无法git clone。

因为我用virtualbox简单的做了一下端口映射,所以我尝试用

git clone http://localhost:8100/compontent/gitlab-test-component

但会报错:500

有知道的吗?

另外想问一下,ssh-key是不是只要生成一次就行了,可以到处放github、gitlab,或者其他地方的,都是同一份?

PHP中文网PHP中文网2756 Il y a quelques jours1051

répondre à tous(3)je répondrai

  • 过去多啦不再A梦

    过去多啦不再A梦2017-04-26 09:03:10

    Parce que le port 22 de l'hôte est déjà occupé

    Lors de l'exécution de Docker, mappez le port 22 du conteneur à d'autres ports de l'hôte tels que 2222

    docker run gitlab -p 2222:22

    Vous devez spécifier l'url dans le fichier de configuration de gitlab

    # 修改 /etc/gitlab/gitlab.rb 文件第一行
    
    external_url 'http://192.168.1.23/'

    Ce qui est affiché dans l'entrepôt du projet est

    git@192.168.1.23:2222/shadowsocks/shadowsocks.git

    Ensuite, vous pouvez utiliser git

    git clone git@192.168.1.23:2222/shadowsocks/shadowsocks.git

    À ce stade, vous devez configurer le fichier .ssh/config sur la machine de développement pour l'utiliser normalement

    Ce qui suit est un exemple d'utilisation de Docker pour exécuter gitlab

    docker run --name='gitlabend' --link gitlab_mysql:mysql \
      --link gitlab_redis:redisio \
      -e 'GITLAB_PORT=10080' \
      -e 'GITLAB_SSH_PORT=10022' \
      -p 10022:22 -p 10080:80 \
      -e 'GITLAB_HOST=xxxx' \
      -e 'GITLAB_EMAIL=user@mail.com' \
      -e 'SMTP_ENABLED=true' \
      -e 'SMTP_DOMAIN=qq.com' \
      -e 'SMTP_HOST=smtp.exmail.qq.com' \
      -e 'SMTP_PORT=25' \
      -e 'SMTP_STARTTLS=false' \
      -e 'SMTP_USER=user@mail.com' \
      -e 'SMTP_PASS=password' \
      -e 'SMTP_AUTHENTICATION=login' \
      -v /opt/gitlab/data:/home/git/data \
      -v /opt/gitlab/log:/var/log/gitlab \
      sameersbn/gitlab:latest

    répondre
    0
  • PHP中文网

    PHP中文网2017-04-26 09:03:10

    Il y a quelque chose qui ne va pas avec l'utilisation. Il n'utilise certainement pas le nom du conteneur Docker comme nom de domaine. Vous devez lier un nom de domaine ou utiliser l'accès IP + port pour le cloner.

    répondre
    0
  • 大家讲道理

    大家讲道理2017-04-26 09:03:10

    @Tairy, n'ai-je pas utilisé le nom de domaine + le port ci-dessus ?

    est juste localhost:8100, mais il signalera une erreur 500. .

    Pouvez-vous me dire comment vous le liez ?

    répondre
    0
  • Annulerrépondre