我已经在虚拟机(运行 Ubuntu 14.4)内设置了一个 gitlab-ce docker 容器。一旦我运行 docker 镜像,我就可以在我的网络上以“machinename.local”的形式访问它,其中 machinename 是我的虚拟机。但是,我想(如果可能)以“gitlab.local”的形式访问 docker gitlab 镜像。我尝试使用不同的端口和 IP 发布,并尝试在 gitlab.rb 文件中设置外部 URL。有没有办法做到这一点,还是我只是在浪费时间?
答案1
您需要发布端口(docker run -p 8080:80 ...
如果您希望发布主机上的端口 8080 以映射到容器端口 80,这些端口号可以相同)。然后,您连接到主机 ip/端口以访问容器服务。因此,如果您的 docker 主机在虚拟机上运行,您可以连接到“http://虚拟机主机:8080/“, 不是 ”http://容器主机/“。
答案2
您混淆了 DNS 和网络连接。如果您可以控制所使用的 DNS 服务器,请为 gitlab.local 添加 DNS 条目,或者只需将其映射到 hosts 文件中即可。