要访问Docker容器的IP地址,有几种不同的方法,具体取决于你的需求和网络配置。
docker inspect
命令docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 容器名或ID
或者简略查看所有网络信息:
docker inspect 容器名或ID | grep IPAddress
docker exec
进入容器查看docker exec -it 容器名或ID ip a
# 或
docker exec -it 容器名或ID ifconfig
一旦获取了容器IP,可以直接从宿主机使用该IP访问容器内的服务:
curl http://容器IP:端口
默认情况下,容器的IP只能在Docker网络内部访问。要从外部访问,有几种方法:
在运行容器时使用-p
参数映射端口:
docker run -p 宿主机端口:容器端口 镜像名
然后可以通过宿主机的IP和映射的端口访问服务。
docker run --network=host 镜像名
这样容器会直接使用宿主机的网络栈,没有独立的IP。
创建自定义网络并连接容器:
docker network create mynetwork
docker run --network=mynetwork --name=mycontainer 镜像名
然后其他连接到同一网络的容器可以使用容器名互相访问。
希望这些方法能帮助你访问Docker容器的IP地址!