跳转至

add-on常用配置(2)

文件夹映射

可以配置6个常用文件夹,在add-on内部访问它们

  map:
    - config:rw
    - ssl
    - addons
    - backup
    - share
    - media

用户配置

用户可以配置哪些信息?这些信息有什么格式要求?

  • config.yaml

    options: path: / schema: path: str

注:目前仅支持最多两层结构的options

  • 用户配置信息存放

/data/options.json

注:如果docker容器需要有一些长久保存的内容,可以存放在/data/目录中

样例:读取用户配置,确定WEB服务根目录

  • config.yaml

    map: - config - ssl - addons - backup - share - media options: path: / schema: path: str

  • Dockerfile

    ARG BUILD_FROM FROM $BUILD_FROM

    COPY run.sh / RUN chmod a+x /run.sh

    CMD [ "/run.sh" ]

  • run.sh

    #!/usr/bin/with-contenv bashio

    ROOTPATH=$(bashio::config 'path') if $(bashio::fs.directory_exists ${ROOTPATH}) then bashio::log.info "http.server serves on directory ${ROOTPATH} ..." exec python3 -m http.server --directory ${ROOTPATH} 8000 else bashio::log.error "directory ${ROOTPATH} does not exist" fi

其它一些常用配置项

https://developers.home-assistant.io/docs/add-ons/configuration/#add-on-config

  • startup:add-on的启动与运行模式
  • devices:设备映射
  • audio:是否使用内部的音频系统(PulseAudio)
  • gpio:是否映射GPIO接口
  • usb:是否映射USB设备
  • uart:是否映射串口设备
  • hassio_api:是否访问supervisor的API
  • homeassistant_api:是否访问HomeAssitant的API
  • image:add-on镜像的网络存放位置

返回课程目录↩