我在 Windows 7 上构建 ASP.net Web 应用程序。
我需要连接一些服务,但又不想费力地在 Windows 上安装它们。
我也使用 Ubuntu 运行 VirtualBox。
我可以在 Ubuntu 上安装 memcached(例如),然后从我的 Windows 操作系统连接到它吗?如果可以,怎么做?
更新
我问的问题似乎有点混乱。我只想从我的主机/父级 Windows 7 操作系统连接到 Ubuntu 虚拟机上运行的服务。
这可能吗?
答案1
在客户机上安装 Memcached(或任何其他软件)后,您可以轻松地从主机(在您的场景中为 Windows 7)连接到该实例。您必须配置 VirtualBox 以让客户机和主机相互通信。
有VirtualBox 中的不同网络模式(桥接网络、内部网络、仅主机网络等)。根据您的要求,您可以按照 URL 中的说明配置适当的网络模式。
我使用 VirtualBox 将 Ubuntu 11.04 作为客户机和主机操作系统,并在它们上安装了 Hadoop。我为 VirtualBox 配置了桥接网络,主机和客户机中的应用程序能够相互通信。桥接网络的缺点是主机必须连接到物理网络(通过路由器或其他东西,以便主机和客户机可以相互通信)。如果主机未连接到物理网络,则应在 VirtualBox 中配置仅主机网络。
答案2
实际上听起来最好将这个问题分为多个问题来问(1)如何在 Ubuntu 上安装 memcached 以及(2)如何将我的 asp.net 应用程序连接到在单独的 Ubuntu 机器上运行的 memcached 实例。
你可能想看看这篇文章,其中作者基本上试图做你正在做的事情: http://www.codeproject.com/KB/web-cache/Memcached.aspx
很确定你现在可以通过 apt 在 ubuntu 上安装 memcached:
sudo apt-get install memcached
/etc/init.d/memcached restart
答案3
大多数这些服务已经通过 TCP/IP 端口监听命令。剩下的就是设置所需的网络。有许多可能的配置,从客户机只能与主机通信,到客户机完全等同于主机作为网络计算机。
本教程是一个很好的起点: VirtualBox 中的网络和共享 - 完整教程,很好地解释了所有概念和软件,并附带了许多屏幕截图。