You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows Docker Desktop下如何不指定端口通过db.test访问phpMyAdmin

HTTP 协议默认使用80端口进行访问,你当前配置中phpMyAdmin的端口映射规则为8083:80,只有访问宿主机的8083端口时,请求才会转发到容器内部的80端口,因此不带端口访问http://db.test时,请求默认走80端口,找不到对应服务。你可以选择以下任意一种方案解决问题:


方案1:直接修改端口映射(本地80端口未被占用时优先选择)

直接修改docker-compose.yml文件中phpmyadmin服务的ports配置,将"8083:80"改为"80:80":

services:
    phpmyadmin:
        # 其余原有配置保持不变
        ports:
            - "80:80"

修改完成后执行命令重启容器即可:

docker-compose up -d

如果启动时提示80端口被占用,说明本地已有其他服务(如IIS、Apache、其他Web项目)占用了80端口,可选择以下两种方案。


方案2:本地部署反向代理(本地80端口已被占用时使用)

在本地安装Nginx或Apache作为反向代理,配置监听80端口的db.test域名请求,转发到127.0.0.1:8083即可。
以Nginx为例,新增站点配置如下:

server {
    listen 80;
    server_name db.test;
    location / {
        proxy_pass http://127.0.0.1:8083;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

重启Nginx后即可直接通过http://db.test访问服务。


方案3:新增Docker Nginx代理容器(无需修改本地现有服务)

你也可以在当前docker-compose.yml中新增一个Nginx服务,和现有服务放在同一个local_web_network网络中,将宿主机80端口映射到Nginx容器,配置Nginx将db.test的请求转发到phpmyadmin服务的80端口即可,不需要改动本地环境配置。


内容的提问来源于stack exchange,提问作者ImSaikiran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 14:45:01