3个版本
0.1.2 | 2023年9月14日 |
---|---|
0.1.1 | 2023年9月8日 |
0.1.0 | 2023年9月8日 |
#314 in 配置
4MB
1K SLoC
包含 (ELF exe/lib, 12MB) resm
远程服务器管理工具
一组简化连接到远程服务器以开发网络系统的工具。
设置
创建配置文件
首先,根据以下JSON格式创建一个配置文件来使用此命令。(示例配置文件可以在env
中找到。)
配置文件会自动从$HOME/env
递归加载,因此可以为每个项目分别管理,例如。还可以通过指定所有子命令共有的-e
选项来更改这些配置文件的读取路径。
[
{
"project": "project name",
"environment": "dev",
"remote_path": "path/to/remote/project/root",
"remote_cache_path": "path/to/remote/project/cache",
"git_path": "path/to/git/repo",
"git_src_path": "path/to/git/src",
"backup_path": "path/to/backup",
"db_host": "db host name",
"db_host_reader": "db host name for reader",
"db_port": 3306,
"db_name": "db name",
"db_user": "db user",
"db_password": "db password",
"db_root_user": "db root user",
"db_root_password": "db root password",
"connect_info":
{
"host": "host name",
"port": 22,
"user": "user",
"identity_file": "path/to/key_file"
},
"tunnels":
[
{
"host": "bastion host name",
"port": 22,
"user": "user",
"identity_file": "path/to/key_file"
}
]
}
]
每个字段的含义如下。标记有星号(*)的字段是必需的。
- 项目 (*): 可选的项目名称
- 环境 (*): 可选的环境名称
- 远程路径:在目标服务器上操作的引用路径(绝对路径)
- 远程缓存路径:目标服务器上缓存目录的路径(绝对路径)
- git路径:git仓库的路径(绝对路径)
- git源路径:git仓库中源目录的路径(绝对路径)
- 备份路径:备份目录的路径(绝对路径)
- db_host:数据库服务器的主机名
- db_host_reader:数据库服务器(读取器)的主机名
- db_port:数据库服务器的端口号
- db_name:数据库名称
- db_user:数据库用户名
- db_password:数据库密码
- db_root_user:数据库root用户名
- db_root_password:数据库root密码
- 连接信息 (*)
- 主机 (*):连接到的主机名或IP地址
- 端口号:服务器的端口号
- 用户名:用户名
- 密码:密码(输入密码不能省略)
- 身份文件:身份文件的路径(绝对路径)
- 隧道:连接时需要通过的服务器步骤信息(连接信息数组)
初始化
执行以下命令以生成SSH配置文件。
$ resm init
将生成的配置文件放置在$HOME/.ssh/config
中或相应地追加。
命令
list
列出项目。
show
显示项目设置。
replace
用本地项目目录替换目标服务器的项目目录。简而言之,当您想执行应用程序的完全更新时,它非常有用。
patch
仅将本地存储库中的指定文件上传到远程服务器。
clear
清除远程缓存目录。
backup
备份远程目录。
backup-db
备份数据库。
注意
此工具依赖于仅与Unix兼容的包,因此如果您在Windows环境中开发,请在WSL上安装此命令,并使用位于 /mnt
的Windows文件作为 git_path
或 git_src_path
。请确保指定系统中的路径。
依赖项
~21-33MB
~580K SLoC