Skip to content

命令行中心 ​

用于执行命令行命令(在Windows下是cmd,在Linux下是shell命令)。提供了自定义命令,以及Docker、Mvn、Yun等常用命令。

Maven坐标 ​

xml
<dependency>
    <groupId>com.ikingtech.framework</groupId>
    <artifactId>sdk-cmd</artifactId>
</dependency>

用法 ​

Java
//批量执行命令,传入字符串集合
Cmd cmd = new Cmd();
cmd.execute(Collections.singletonList("要执行的命令"));

Docker ​

  • Docker.pull() ​

    Docker.pull().imageName("镜像名称").execute();
  • Docker.run() ​

    以mysql为例

    Docker.run()
            .ports(Tools.Coll.newMap(Tools.Coll.Kv.of("宿主机端口", "3306")))
            .volumes(Tools.Coll.newMap(
                    Tools.Coll.Kv.of("配置文件根路径" + "/mysql.cnf", "/etc/mysql/conf.d/mysql.cnf"),
                    Tools.Coll.Kv.of("数据文件根路径", "/var/lib/mysql/"),
                    Tools.Coll.Kv.of("初始化文件根路径", "/docker-entrypoint-initdb.d/")
            ))
            .env(Tools.Coll.newMap(
                    Tools.Coll.Kv.of("MYSQL_ROOT_PASSWORD", "mysql密码")
            ))
            .name(MYSQL_CONTAINER_PREFIX + "实例号")
            .imageName("镜像名称")
            .options(Tools.Coll.newList(
                    "--character-set-server=utf8mb4",
                    "--collation-server=utf8mb4_unicode_ci"
            ))
            .execute();
  • Docker.start() ​

    Docker.start().containerName("容器名称").execute()
  • Docker.stop() ​

    Docker.stop().containerName("容器名称").execute()
  • Docker.rm() ​

    Docker.rm().containerName("容器名称").execute()

Mvn ​

  • Mvn.pck() ​

    Mvn.pck().srcDir("要打jar包代码根路径").execute();

Yum ​

  • Yum.install() ​

    Yum.install().packages("要下载的名称...").execute();
  • Yum.remove() ​

    Yum.remove().packages("要删除的名称...").execute();

SystemCtl ​

  • SystemCtl.daemonReload() ​

    SystemCtl.daemonReload().execute(); //重新加载服务
  • SystemCtl.restart() ​

    SystemCtl.restart().service("服务名称").execute(); //重新启动服务