我需要将 PHP 和 Python 代码以及适当的环境(Web 服务器、数据库服务器)部署到远程 Windows 系统,但我不知道什么工具链相当于ssh
、、scp
等等bash
。
因此,基本上,我需要能够做到以下几点:
- 以安全的方式使用适当的权限访问远程 Windows,就像我平常做的那样
ssh
(我甚至不知道这在 Windows 上是文本还是图形界面)。 - 远程安装软件:Apache 或 IIS、MySQL 或 Postgres、Python 或 PHP
- 从远程复制文件(我们正在部署的应用程序)
- 远程配置机器以运行常规任务(例如检查应用程序的更新)
- 自动执行从指定位置下载文件等任务
主要问题可能是我首先如何安全地进入机器,然后其余的是一般的 Windows 管理知识,这个范围可能太广泛,无法用一个问题来概括。
我有多年维护 Linux 系统的经验,并且使用过各种复杂程度的工具,从简单的scp
PHP 文件部署到 Java 应用程序容器的部署,甚至使用 Vagrant 部署完整的虚拟机。
在 Windows 上,我完全是个菜鸟,我甚至不知道从哪里开始。我一生中在台式机上安装过 Apache、MySQL 和 PHP 大概只有两次,仅此而已。
在我这边的 Linux 机器上运行的东西可以获得加分,但我可以运行 VM 并从那里完成所有事情。
答案1
PowerShell 是用于 Windows 管理(本地或远程)的卓越脚本语言。
有一些工具可用于从 *nix 调用和使用 PowerShell,例如帕什。我从来没有使用过它们中的任何一个,所以我无法评价它们的能力、完整性或精致度。
答案2
安全远程访问:OpenVPN + RDP?如果你足够勇敢,你可以安装 Cygwin + OpenSSH 服务器。
您可能想看看适用于 Windows 的 Puppet,它应该可以帮助您完成许多自动化和软件安装 (msi)。我相信 puppetmaster 必须在 Linux 上,而 puppet 代理将在 Windows 上运行。
答案3
嗯,有趣的是,这里没有人谈论重量级人物。
对我来说它是 SCOM、SCCM——系统中心操作和配置管理器。
安装、性能跟踪、问题通知——全部都在其中。
答案4
我不确定它是否合适,但是纳戈伊斯可能对你也有用。我知道他们有一些远程部署工具,还有监控功能。