Skip to content

How to contribute to the MCSManager App Market? #77

@yumao233

Description

@yumao233
Image

English

You only need to submit a PR following the format of the file at market.json.

Once merged, all MCSManager users will be able to get the latest data.

  1. We accept any game, provided that it has a certain player base and is made available as a Docker image whenever possible. To prevent supply chain attacks, the Docker image or download link you provide must come from an official source. For third-party images or server software distributed by third parties, we will only recognize them if they have over 10,000 monthly downloads and are popular among a large number of players (e.g., Spigot, Forge).

  2. We only accept two languages: English and Chinese.

App Template:

{
  title: "Terraria Server",
  language: "en_us",
  platform: "Linux",
  description: "For Linux systems, using a third-party Docker image of Terraria for quick server deployment!",
  image: "https://mcsmanager.oss-cn-guangzhou.aliyuncs.com/package-images/terraria.webp",
  
  gameType: "Terraria",             // Primary category
  category: "Latest Version",       // Secondary category
  runtime: "Ubuntu/Centos LTS",     // Supported system environment description
  hardware: "RAM 8G+",              // Hardware requirements
  size: "",                         // Installation package size (optional)
  
  // Installation package download address, only official game download addresses and ZIP files are supported (optional)
  // If a Docker image (docker.image) is provided, this setting can be left empty
  targetLink: "",
  author: "MCSManager",
  tags: ["Docker version"],
  
  setupInfo: {
    // Startup command, leave empty to use the container's built-in EntryPoint
    startCommand: "",
    stopCommand: "exit",            // Stop command when clicking the close button
    ie: "utf8", 
    oe: "utf8",
    "type": "steam/universal",      // Game type, not recommended to modify
    tag: ["terraria"],              // Tag labels (optional)
    fileCode: "utf8",
    processType: "docker",          // Process type, if set to docker, the docker.image field must be filled (optional)
    updateCommand: "",              // Command executed when clicking the update button, also runs inside the container (optional)
    
    // The following are settings related to the Docker image
    docker: {
      image: "ryshe/terraria:latest",       // Most important! Image name
      ports: ["{mcsm_port1}:7777/tcp"],     // Mapped ports, mcsm_port1~5 are reserved ports for each instance by MCSManager
      // Additional mounted directories
      extraVolumes: [], 
      workingDir: "/root/.local/share/Terraria/Worlds",  // Working directory
      // Environment variables
      env: [
        "SERVER_NAME=Private PalWorld Server",
        "SERVER_DESC=Private PalWorld Server",
        "ADMIN_PASSWORD=123456"
      ],
      changeWorkdir: false           // Whether to force switch to the working directory
    }
  }
}

中文

只需按照 market.json 文件中的格式提交一个 PR(拉取请求)即可。一旦合并,所有 MCSManager 用户都能获取到最新数据。

  1. 我们接受任何游戏,但需满足以下条件:游戏需拥有一定的玩家基数,且尽可能以 Docker 镜像的形式提供。为防止供应链攻击,您提供的 Docker 镜像或下载链接必须来自官方渠道。若为第三方镜像或第三方分发的服务端软件,则需满足“月下载量超过 10000 次”且“受大量玩家欢迎”这两个条件,我们才会认可(例如 Spigot、Forge 等)。

  2. 我们仅接受两种语言:英语和中文。

应用模板:

{
  title: "Terraria Server(泰拉瑞亚服务器)",
  language: "en_us",  // 语言设置(en_us 表示英文,zh_cn 表示中文)
  platform: "Linux",  // 运行平台
  description: "适用于 Linux 系统,使用泰拉瑞亚第三方 Docker 镜像实现服务器快速部署!",
  image: "https://mcsmanager.oss-cn-guangzhou.aliyuncs.com/package-images/terraria.webp",  // 服务器相关图片链接
  
  gameType: "Terraria",             // 一级分类(游戏名称)
  category: "Latest Version",       // 二级分类(版本类型,如“最新版本”“稳定版本”)
  runtime: "Ubuntu/Centos LTS",     // 支持的系统环境说明(Ubuntu 或 Centos 长期支持版本)
  hardware: "RAM 8G+",              // 硬件要求(内存 8GB 及以上)
  size: "",                         // 安装包体积(可选,无数据时留空)
  
  // 安装包下载地址(可选):仅支持游戏官方下载地址及 ZIP 格式文件
  // 若已提供 Docker 镜像(docker.image 字段),此设置可留空
  targetLink: "",
  author: "MCSManager",  // 模板作者/提供者
  tags: ["Docker version"],  // 标签(用于分类筛选,如“Docker 版本”“官方镜像”)
  
  setupInfo: {  // 服务器配置与运行信息
    // 启动命令:留空则使用容器自带的入口程序(EntryPoint)
    startCommand: "",
    stopCommand: "exit",            // 停止命令:点击“关闭”按钮时执行的命令
    ie: "utf8",  // 输入编码格式(utf8 为通用编码,建议保持默认)
    oe: "utf8",  // 输出编码格式(同上)
    "type": "steam/universal",      // 游戏类型:不建议修改(标识基于 Steam 平台的通用类型)
    tag: ["terraria"],              // 附加标签(可选,用于更精细的分类)
    fileCode: "utf8",  // 文件编码格式(确保配置文件读写编码一致)
    processType: "docker",          // 进程类型:若设为 docker,必须填写 docker.image 字段(可选)
    updateCommand: "",              // 更新命令(可选):点击“更新”按钮时执行的命令,会在容器内运行
    
    // 以下为 Docker 镜像相关配置(进程类型设为 docker 时需配置)
    docker: {
      image: "ryshe/terraria:latest",       // 最重要!Docker 镜像名称(格式为“镜像名:标签”,latest 表示最新版本)
      ports: ["{mcsm_port1}:7777/tcp"],     // 端口映射:{mcsm_port1~5} 为 MCSManager 为每个实例预留的动态端口,映射到容器内 7777 端口(泰拉瑞亚默认端口)
      // 额外挂载目录(可选):需挂载外部目录时填写,无额外挂载则留空数组
      extraVolumes: [], 
      workingDir: "/root/.local/share/Terraria/Worlds",  // 容器内工作目录(泰拉瑞亚世界文件存储路径)
      // 环境变量(可选):用于配置服务器参数,如服务器名称、密码等
      env: [
        "SERVER_NAME=Private PalWorld Server(私人幻兽帕鲁服务器)",  // 服务器名称(此处示例为“私人幻兽帕鲁服务器”,实际使用时需改为对应游戏名称)
        "SERVER_DESC=Private PalWorld Server(私人幻兽帕鲁服务器)",  // 服务器描述
        "ADMIN_PASSWORD=123456"  // 管理员密码(建议部署时修改为自定义密码)
      ],
      changeWorkdir: false           // 是否强制切换到工作目录:false 表示不强制,保持默认即可
    }
  }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions