欢迎使用牧云主机安全平台!我们致力于帮助用户更轻松地管理他们的云主机。
我们提供了两种使用牧云插件的方式,分别是通过牧云主机管理助手和独立 CLI 工具使用。
你可以在 官网 安装牧云主机管理助手,安装后即可使用其中的牧云插件。使用过程中遇到的问题欢迎来这里发 Issue.
Arch Linux:
# Install openssl-dev first
sudo pacman -S pkg-config openssl
cargo +nightly install collie-app-cli
Debian and Ubuntu:
sudo apt install pkg-config libssl-dev
cargo +nightly install collie-app-cli
CentOS:
yum install pkg-config openssl-devel
cargo +nightly install collie-app-cli
Fedora:
sudo dnf install pkg-config openssl-devel
cargo +nightly install collie-app-cli
Alpine Linux:
apk add pkgconfig openssl-dev
cargo +nightly install collie-app-cli
macOS (Homebrew):
brew install openssl@3
cargo +nightly install collie-app-cli
macOS (MacPorts):
sudo port install openssl
cargo +nightly install collie-app-cli
macOS (pkgsrc):
sudo pkgin install openssl
cargo +nightly install collie-app-cli
- 从 Release 下载 合你系统的 CLI 工具
- 复制到你的 bin 目录
首先你需要参考上一节安装 CLI 工具
collie-app-cli new <your_new_app>
cd <your_new_app>
# edit your template app
详细参见:
collie-app-cli up --dry
渲染结果在 .render
启动应用:
collie-app-cli up
停止应用:
collie-app-cli down
redis
├── config # 可选的自定义文件夹(嵌套文件夹,最大 10 层)
│ └── redis.conf # 可选的自定义文件
├── docker-compose.yaml # 必要的 docker compose 描述文件
├── favicon.png # 必要的 应用图标
├── manifest.yaml # 必要的 应用核心 manifest 文件
└── scripts # 必要的 脚本文件目录
├── init.sh # 必要的 安装后的自定义初始化脚本(无需可留空)
├── uninstall.sh # 必要的 卸载后的自定义卸载脚本(无需可留空)
└── upgrade.sh # 必要的 升级后的自定义卸载脚本(无需可留空)
metadata:
name: redis # 插件名字
desc: fast kv database. # 插件描述
tags: # 插件标签
- web
version: 0.1.0 # 插件版本
homepage: https://example.com # 插件主页
author: # 作者信息
name: your_name
mail: [email protected]
resource: # 该插件所需要的资源
limit: # 最低资源限制
cpu: 1 # 所需的 CPU 核心数量
memory: 1024M # 所需的内存,支持后缀,如 M,G,Mib,MiB,GiB 等
disk: 1G # 所需的磁盘,支持后缀,如 M,G,Mib,MiB,GiB 等
recommend:
cpu: 2
memory: 2048M
disk: 2G
templates: # 需要渲染的模版列表,路径时相对于插件目录的
- docker-compose.yaml
- config/custom.conf
ports:
web: # 用于在模版中使用的名字 访问该变量的语法 {{ports.web.ip}}:{{ports.web.port}}
ip: 0.0.0.0 # 端口绑定的 IP
port: 80 # 端口绑定的 端口
desc: web # 描述信息,会在牧云主机助手创建应用时显示
variables:
password: # 用于在模版中使用的名字 访问该变量的语法 {{variables.password.value}}
name: 服务密码 # 描述性的名字,如 XX 密码
desc: 用于访问服务时用的密码,请注意复杂度 # 提示性的描述信息,如 请注意密码复杂度
value: wPMihYE # 默认的值,可以在创建应用时通过 UI 覆盖