OrbStack是个好软件,他让虚拟机、Docker的管理变得更容易了一些,如果你不太爱在mac上使用docker,那orbstack的虚拟机功能,也是值得你使用的。他不像ubuntu官方的虚拟机只能创建ubuntu系统,他支持几乎市面常见的操作系统,连openSUSE也支持,那就确实很方便了。
为了测试我本地开发的项目是否能够在debian上运行(主要是因为安装了playwright,才需要有此一举),在虚拟机里还安装了hestia,之所以没有装bt或者1panel,就是想着hestia比较轻量,而且也支持多用户权限。这点1panel和bt好象没有。 1panel反正就是容器,bt则是以root运行
然后hestia则因为安装了mysql和redis,正常情况下,我没感觉有问题,我本机用的是dbngin,启动着mysql和redis。
在安装更新重启后,orb先启动了。然后我本地测试代码时,dbngin中的mysql和redis就启动不了,说被占用。运行命令后发现:
XML/HTML代码
- lsof -i:6379
- COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
- OrbStack 676 admin 118u IPv4 0x3b94fc9ad9f8ea2e 0t0 TCP localhost:6379->localhost:61448 (ESTABLISHED)
- OrbStack 676 admin 122u IPv4 0xb6cd7e64818d058 0t0 TCP localhost:6379 (LISTEN)
- OrbStack 676 admin 123u IPv6 0x8ec6c81483673ff9 0t0 TCP localhost:6379 (LISTEN)
- OrbStack 676 admin 148u IPv4 0xf08e7374ce714e45 0t0 TCP localhost:6379->localhost:61449 (ESTABLISHED)
- php82 47270 admin 11u IPv4 0x687126e3d6dc34f6 0t0 TCP localhost:61448->localhost:6379 (ESTABLISHED)
- php82 47270 admin 12u IPv4 0x59a47292c1e5b7dc 0t0 TCP localhost:61449->localhost:6379 (ESTABLISHED)
redis 和 mysql OrbStack占用了。
找了一下配置发现不知道怎么关闭这个端口转发,后来运行orb config get xx ,xx可以乱写,如果他get不到,会获取全部的config,发现有这两条:
machines.expose_ports_to_lan: true
machines.forward_ports: true
由于我其实是想让他的端口被局域网访问的(orb多个虚拟机也有一个网段),所以expose_ports_to_lan就没有关闭,只关闭了forward_ports: orb config set machines.forward_ports false
再重启一下相应的虚拟机,发现6379没有数据了。
启动DBngin,也能够正常启动了。
至此,问题全部解决。

