首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么 url 通常使用域名不是 IP 地址?

今天来谈谈为什么我们的网址,通常是使用域名,不是 IP 地址。 首先我们了解一下 DNS 是什么。 DNS DNS,全称为 Domain Name System,即域名系统。...DNS 是一个分布式数据库,记录了域名和对应 IP 的相互映射,一个经常被用到的功能就是通过域名拿到对应的 IP。...为此,客户端会去找到那个服务器,但没有一个叫 reactjs.org 的服务器,服务器是通过 IP 定位的,我们需要的是 IP。...其实就是:域名 --> IP --> 真实服务器。 为什么要用域名不用 IP? 首先,域名方便记忆。 IP 没有意义,比如 39.156.66.10 就像是一个手机号,难以记忆。...然后,通过域名的这一层抽象,我们可以随意地更换其下的 IP 地址。 如果我们的网站用的是一个固定 IP,当我们想更换服务器,同时也代表 IP 会被替换,那我们就需要一个个通知用户,这是不能接受的。

1.6K20
您找到你想要的搜索结果了吗?
是的
没有找到

Docker - 解决 gitlab 容器上的项目进行 clone 时,IP 地址显示一串数字不是正常 IP 地址的问题

问题背景 通过 gitlab 容器创建了一个项目,想 clone 到本地,结果发现项目的 IP 地址是一串数字 ? 问题排查 明明创建项目的时候,IP 地址还是正常的鸭! ?...解决方案 先说下我创建 gitlab 容器的语句 是进行了目录映射的 docker run -d -p 443:443 -p 9001:80 -p 8022:22 \ --name gitlab \ -...将这个 external_url 改成主机的 IP,不需要加端口哦 保存! 重启 gitlab 容器 docker restart gitlab 修改成功 ?...502,可以参考这篇文章解决 https://www.cnblogs.com/poloyy/p/13883500.html 注意事项二 如果没有映射目录,则需要进去容器内部去改 gitlab.rb 了 docker

1.8K10

不是吧?阿sir!周末你就不学习了吗?

另外,xdebug不是伴随着php的,要使用它,需要我们自行安装,可费劲er了。当然我们可以直接到docker hub上找现成的环境。 安装完xdebug你以为就结束了吗,没有!...我们还需要对xdeubg进行配置,网上大多数的教程都是说在php.ini里配置,但是我使用的这个docker环境,xdebug是有一个单独的配置文件的 我就直接在这里面配置了(其实docker环境已经配置的差不多了...= 1 自动回ip地址是来自下面这几处: xdebug.remote_addr_header X-Forwarded-For Remote-Addr 我们知道xff头是可以控制的,所以就算配置了其他的两个...,也没有关系,照样可以连接到我指定的ip地址上,这不就出大问题了吗 利用条件 xdebug.remote_connect_back = 1 //开启回 并且此选项开启时,xdebug会忽略xdebug.remote_host...直接把客户端ip当作回ip,也就是谁访问它,谁就是回ip xdebug.remote_enable = 1 //开启xdebug xdebug.remote_log = /tmp/

1.7K20

Docker 之容器间通信配置

我们安装Docker时,它会自动创建三个网络,bridge(创建容器默认连接到此网络)、 none 、host host:容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。...Docker容器连接到一个虚拟网桥docker0上 overlay:顾名思义:覆盖,但它又不是覆盖,它的作用就是在容器原有的网络基础之上,再添加一块网卡,并为其分配一个IP地址,可以将所有的docker...--ip 172.20.18.6 busybox [root@docker03 ~]# docker network connect my_net1 test2 #将test2接到...#如果没有将box2接到网络my_net1,是绝对不会ping通 PING test3 (172.18.0.2): 56 data bytes 64 bytes from 172.18.0.2: seq...~]# docker network connect my_net2 test4 # 将test4接到my_net2网络 #同box2和box3的ping测试,若没有将box4接到box5所在的网络

4.8K30

分布式专题|女朋友突然问我如何使用Docker搭建RabbitMQ集群并实现高可用?

:15673/#/ http://localhost:15674/#/ 如果成功登入,则代表组件安装成功,但是这时候还不是集群模式,我们需要手动加入到集群 从节点加入到主节点,实现集群模式 # salve1...整合HAProxy 我这里还是通过docker安装HAProxy,因为使用dokcer安装软件是真的香。...timeout client 60s #服务器端链接超时时间为 15秒 则HA 发起重机制 timeout server 15s #front-end IP for consumers...timeout client 60s #服务器端链接超时时间为 15秒 则HA 发起重机制 timeout server 15s #front-end IP for consumers...HAProxy了,自行测试使用吧,代码已经上传到代码库咯 总结 其实安装rabbitmq是很麻烦的,需要解决各种环境问题;但是好在我这里使用docker,可以很顺畅的完成安装;然后把主要的时间放在调试集群上面

51520

Docker 入门(四)

场景:假设我们有一个 web 应用,需要显示总共连接的次数,同时我们使用另一个 redis 服务去记录这个数值,显然 web 是需要连接到 redis 上的,而在 docker 容器中,每个容器都默认有自己独立的虚拟网络...我们先将 redis 容器的端口暴露到本地宿主机,然后在 web 中指定本地宿主机具体的 IP 地址,这样也可以实现连接,但是需要注意的是,在 web 中不能直接使用 localhost ,因为前面已经提到了...,每个容器都有自己独立的虚拟网络,使用 localhost 将会指向的是这个容器内部,不是宿主机。...这里与前一种方式不同的是,我们直接通过 --net host 指定容器直接使用宿主机网络,这样在 web 中就可以直接通过 localhost接到 redis 了,不用知道宿主机具体的 IP 地址,...但是这种方式的问题在于,对于 MacOS 系统无法使用,因为在 MacOS 上 Docker 仍然是跑在一层虚拟机中的,这种方式目前还无法穿透这层虚拟机直接将 localhost 映射到宿主机本地,同时

42430

Docker容器学习梳理--容器间网络通信设置(Pipework和Open vSwitch)

安装完docker,系统会自动添加一个供docker使用的网桥docker0,我们创建一个新的容器时, 容器通过DHCP获取一个与docker0同网段的IP地址,并默认连接到docker0网桥,以此实现容器与宿主机的网络互通...在容器运行时,每个容器都会分配一个特定的虚拟机口并桥接到docker0。每个容器都会配置同docker0 ip相同网段的专用ip 地址,docker0的IP地址被用于所有容器的默认网关。...Docker 会尝试寻找没有被主机使用ip段,尽管它适用于大多数情况下,但是它不是万能的,有时候我们还是需要对ip进一步规划。...2)也可以选择保留使用默认docker0的配置,这样单主机容器之间的通信可以通过docker0; 跨主机不同容器之间通过pipework将容器的网卡桥接到br0上,这样跨主机容器之间就可以通信了...//删除默认的原路由,其实就是eth0上使用的原路由192.168.1.1(这步小心,注意删除后要保证机器能远程连接上,最好是通过外网ip远程的。

3.3K110

docker复制文件到宿主机_下面哪几个属于docker网络模式

安装完docker,系统会自动添加一个供docker使用的网桥docker0,我们创建一个新的容器时, 容器通过DHCP获取一个与docker0同网段的IP地址,并默认连接到docker0网桥,以此实现容器与宿主机的网络互通...在容器运行时,每个容器都会分配一个特定的虚拟机口并桥接到docker0。每个容器都会配置同docker0 ip相同网段的专用ip 地址,docker0的IP地址被用于所有容器的默认网关。...会尝试寻找没有被主机使用ip段,尽管它适用于大多数情况下,但是它不是万能的,有时候我们还是需要对ip进一步规划。...192.168.1.1(这步小心,注意删除后要保证机器能远程连接上,最好是通过外网ip远程的。...,新建容器并使用pipework添加虚拟网卡桥接到br0,如此创建的容器间就可以相互通信了。

75160

用户定义网络中的内嵌DNS服务器

接到用户自定义网络的容器的DNS lookup与连接到默认 bridge 网络的容器的工作机制不同。...从Docker 1.10开始,Docker daemon实现了一个内嵌的DNS服务器,它为任何使用有效 name 、 net-alias 或使用 link 别名所创建的容器提供内置的服务发现能力。...Docker如何管理容器内DNS配置的具体细节可随着Docker版本的改变改变。...内嵌DNS服务器维护特定用户自定义网络中所有容器别名及IP之间的映射。 通过在 docker network connect 命令中使用 --alias 选项,容器可在不同的网络中具有不同的别名。...在执行此操作时,damon会从宿主机的原始文件中过滤出所有localhost IP地址 nameserver 条目。 过滤是必要的,因为宿主机上的所有localhost地址都不可从容器的网络中访问。

3K50

docker单主机网络

0 overruns 0 carrier 0 collisions 0 container模式: Container模式指定新创建的容器和已存在的容器共享一个Network Namespace,不是和宿主机共享...默认的网络模式,不写--net参数,默认就是bridge模式,该模式会为每个容器分配network namespace、设置ip、路由等配置,默认会将docker容器连接到一个虚拟网桥docker0上。...3、从docker0子网中分配一个ip给容器使用,并设置docker0的ip地址为容器的默认网关。...使用pipework配置容器与宿主机同一网段: docker默认提供了一个隔离的内网环境,启动时会建立一个docker0的虚拟网卡,每个容器都是连接到docker0网卡上的。...docker0的ip段为172.17.0.0,若想让容器与宿主机同一网段的其他机器访问,所以为了让容器与宿主机同一个网段,我们需要建立自己的桥接网络。

77240

Docker容器网络

Docker容器网络 1、Docker容器网络 Docker在安装后自动提供3种网络,可以使用``docker network ls`命令查看 [root@localhost ~]# docker network...使用Linux桥接,在宿主机虚拟一个Docker容器网桥(docker0),Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址,称为Container-IP,同时Docker网桥是每个容器的默认网关...从docker0子网中分配一个IP给容器使用,并设置docker0的IP地址为容器的默认网关。...Docker网桥是宿主机虚拟出来的,并不是真实存在的网络设备,外部网络是无法寻址到的,这也意味着外部网络无法通过直接Container-IP访问到容器。...round-trip min/avg/max = 0.096/0.110/0.125 ms 2.2 container模式 这个模式指定新创建的容器和已经存在的一个容器共享一个 Network Namespace,不是和宿主机共享

42720

Docker容器学习梳理--基础知识(2)

docker 但是最近使用DaoCloud的docker加速器体验非常差,加速效果不是很明显。...container 模式 这个模式指定新创建的容器和已经存在的一个容器共享一个 Network Namespace,不是和宿主机共享。...使用特定范围的IP Docker 会尝试寻找没有被主机使用ip 段,尽管它适用于大多数情况下,但是它不是万能的,有时候我们还是需要对ip进一步规划。...也可以保留使用默认的配置,这样单主机容器之间的通信可以通过 docker0,跨主机不同容器之间通过pipework新建docker容器的网卡桥接到br0,这样跨主机容器之间就可以通信了。...exec 方式会被解析为一个 JSON 数组,所以必须使用双引号不是单引号。

1.8K100

Docker运行命令示例

你可以使用 docker container ls 命令列出正在运行的容器。 要将终端连接到分离的容器根进程,请使用 docker container attach令。...--rm选项告诉docker run命令在容器自动退出时将其删除: docker container run --rm nginx 在容器退出后,Nginx映像可能不是清理容器文件系统的最佳示例。...要发布端口,请使用-p选项,如下所示: -p host_ip:host_port:container_port/protocol 如果未指定host_ip,则默认为0.0.0.0。...你也可以使用curl http://localhost:8080 入门小站 交互式运行容器 处理bash之类的交互过程时,请使用-i和-t选项启动容器。...在此示例中,我们提供了命令(/bin/bash)作为执行的docker run命令的参数,不是Dockerfile中指定的命令。

1.2K10
领券