A Vert.x Shell provides a remotely accessible shell available via Telnet, SSH that provides a variety of commands for interacting live with Vert.x services
A Vert.x Shell can be provided via the deployment of:
Vert.x Shell can be started programmatically via:
The configuration occurs in the ShellServiceOptions object.
when Vert.x Shell is already on your classpath you can use service:io.vertx.ext.shell instead or maven:io.vertx:vertx-shell:3.8.4
With the vertx command line:
vertx run -conf '{"telnetOptions":{"port":5000}}' maven:io.vertx:vertx-shell:3.8.4
keytool -genkey -keyalg RSA -keystore ssh.jks -keysize 2048 -validity 1095 -dname CN=localhost -keypass secret -storepass secret
echo user.admin=password > auth.properties
{
"sshOptions": {
"port": 4000,
"keyPairOptions": {
"path": "ssh.jks",
"password": "secret"
},
"authOptions": {
"provider": "shiro",
"config": {
"properties_path": "file:auth.properties"
}
}
}
}
vertx run -conf '$(cat conf.json)' maven:io.vertx:vertx-shell:3.8.4
keytool -genkey -keyalg RSA -keystore keystore.jks -keysize 2048 -validity 1095 -dname CN=localhost -keypass secret -storepass secret
echo user.admin=password > auth.properties
{
"httpOptions": {
"port": 8080,
"ssl": true,
"keyStoreOptions": {
"path": "keystore.jks",
"password": "secret"
},
"authOptions": {
"provider": "" shiro,
"config": {
"properties_path": "file:auth.properties"
}
}
}
}
vertx run -conf '$(cat conf.json)' maven:io.vertx:vertx-shell:3.8.4
https://vertx.io/docs/vertx-shell/java/#_base_commands
Vert.x Shell can be extended with custom commands in any language supported by Vert.x