Docder搭建Testlink - 宿主机浏览器无法访问

环境描述:

1.虚拟机运行,网络方式为NAT
2.mariadb、testlink运行正常。映射本地8000端口。

问题:

0.宿主机浏览器访问Testlink失败。
1.宿主机telnet 虚拟机eth0 8000端口不通。
2.虚拟机telnet 127.0.0.1 8000也失败了。

请老师帮忙给看下~谢谢啦!!



image

感觉你这个testlink容器没有启动起来啊.docker ps看看有没有testlink
docker命令有个问题是虽然你--net testlink-tier指定网桥,但是没有–link连接mariadb数据库,这有可能是docker容器启动失败的原因.

老师好~
docker ps -a testlink进程起来了

CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS                           PORTS                                                             NAMES
9b15d37ba285        bitnami/testlink:1.9.20   "/opt/bitnami/scri..."   3 minutes ago       Up 3 minutes                     8080/tcp, 8443/tcp, 0.0.0.0:8000->80/tcp, 0.0.0.0:8443->443/tcp   testlink
3ab6d050e6a5        bitnami/mariadb:10.3.22   "/opt/bitnami/scri..."   6 hours ago         Up 3 minutes                     3306/tcp                                                          mariadb

docker logs -f testlink 数据库看日志也连上了,没报错

testlink 11:59:24.81 INFO  ==> Trying to connect to the database server

testlink 11:59:46.47 INFO  ==> ** TestLink setup finished! **
testlink 11:59:46.48 INFO  ==> ** Starting Apache **

刚才试了下用–link mariadb ,也是拒绝访问啊。

docker ps 不要加-a参数,-a是看曾经启动过的容器,docker ps是查看目前启动的容器
mariadb的启动命令也发过来吧
还有我不是老师 哈哈哈

嗯嗯,谢谢同学~

root@ubuntu:/home/docker-composedir# docker ps
CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS              PORTS                                                             NAMES
9b15d37ba285        bitnami/testlink:1.9.20   "/opt/bitnami/scri..."   23 minutes ago      Up 23 minutes       8080/tcp, 8443/tcp, 0.0.0.0:8000->80/tcp, 0.0.0.0:8443->443/tcp   testlink
3ab6d050e6a5        bitnami/mariadb:10.3.22   "/opt/bitnami/scri..."   6 hours ago         Up 22 minutes       3306/tcp                                                          mariadb

mariadb:
docker run -d --name mariadb -e ALLOW_EMPTY_PASSWORD=yes -e MARIADB_USER=bn_testlink -e MARIADB_DATABASE=bitnami_testlink --net testlink-tier --user root --volume mariadb_data:/bitnami  bitnami/mariadb:10.3.22
testlink:
sudo docker run -d --name testlink -p 8000:80 -p 8443:443 -e ALLOW_EMPTY_PASSWORD=yes -e TESTLINK_DATABASE_USER=bn_testlink -e TESTLINK_DATABASE_NAME=bitnami_testlink --net testlink-tier --user root --volume testlink_data:/bitnami bitnami/testlink:1.9.20

看来docker命令没什么问题.虚拟机网络模式改为桥接吧.NAT我记得好像是虚拟机宿主机共享IP地址.有可能你这个没有访问虚拟机而是访问宿主机了.

公司的网,虚拟用桥接就给断了。。。只能用NAT。
运行的nginx 和 jenkins都可以访问。唯独testlink拒绝访问。
感觉问题出在回环端口这里:127.0.0.1 8000 都不通。但是不知道咋排查下去了。

宿主机先物理断网然后再桥接呢 :joy:
不行的话试试主机模式

telnet 127.0.0.1 8000
telnet 127.0.0.1 8443

总结:

0.虚拟机主机模式也是无法访问~
1.还是没有排查出来普通映射的8000端口不通是因为什么。。。【限于NAT模式,桥接模式再试下。】
2.但是通过加密端口8443可以正常访问,浏览器访问时注意要用https://
不然报:image

感谢@ CaptainJi周杰偷同学相助!