[Config Support]: Env-Var substutition does not work #11368
-
Describe the problem you are havingWhen setting "{FRIGATE_MQTT_PASSWORD}" in my config.yaml I get the following error:
If I remove those vars it works completely as expected. I'm aware of the other threads and the docu: After reading through those I'ld expect them to work as long as the start with 'FRIGATE_' Version0.13.2-69d9a261 Frigate config filemqtt:
enabled: True
host: 10.xx.xxx.20
port: 1883
user: "{FRIGATE_MQTT_USER}"
password: "{FRIGATE_MQTT_PASSWORD}" Relevant log outputfrigate | 2024-05-13 22:08:41.431116806 *************************************************************
frigate | 2024-05-13 22:08:41.431117681 *** Config Validation Errors ***
frigate | 2024-05-13 22:08:41.431118848 *************************************************************
frigate | 2024-05-13 22:08:41.431138389 'FRIGATE_MQTT_PASSWORD'
frigate | 2024-05-13 22:08:41.431825539 Traceback (most recent call last):
frigate | 2024-05-13 22:08:41.431828164 File "/opt/frigate/frigate/app.py", line 645, in start
frigate | 2024-05-13 22:08:41.431829039 self.init_config()
frigate | 2024-05-13 22:08:41.431829914 File "/opt/frigate/frigate/app.py", line 113, in init_config
frigate | 2024-05-13 22:08:41.431831080 self.config = user_config.runtime_config(self.plus_api)
frigate | 2024-05-13 22:08:41.431831955 File "/opt/frigate/frigate/config.py", line 1108, in runtime_config
frigate | 2024-05-13 22:08:41.431833122 config.mqtt.password = config.mqtt.password.format(**FRIGATE_ENV_VARS)
frigate | 2024-05-13 22:08:41.431835164 KeyError: 'FRIGATE_MQTT_PASSWORD'
frigate | 2024-05-13 22:08:41.431835747
frigate | 2024-05-13 22:08:41.431836914 *************************************************************
frigate | 2024-05-13 22:08:41.431838080 *** End Config Validation Errors ***
frigate | 2024-05-13 22:08:41.431850038 *************************************************************
frigate | 2024-05-13 22:08:42.819730424 [INFO] Service Frigate exited with code 1 (by signal 0) Frigate stats{"cameras":{"cam01":{"audio_dBFS":0.0,"audio_rms":0.0,"camera_fps":5.0,"capture_pid":474,"detection_enabled":1,"detection_fps":20.4,"ffmpeg_pid":483,"pid":470,"process_fps":4.2,"skipped_fps":0.9},"cam02":{"audio_dBFS":0.0,"audio_rms":0.0,"camera_fps":5.0,"capture_pid":478,"detection_enabled":1,"detection_fps":7.0,"ffmpeg_pid":486,"pid":473,"process_fps":5.2,"skipped_fps":0.1}},"cpu_usages":{"1":{"cmdline":"/package/admin/s6/command/s6-svscan -d4 -- /run/service","cpu":"0.0","cpu_average":"0","mem":"0.0"},"15":{"cmdline":"s6-supervise s6-linux-init-shutdownd","cpu":"0.0","cpu_average":"0","mem":"0.0"},"18":{"cmdline":"/package/admin/s6-linux-init/command/s6-linux-init-shutdownd -c /run/s6/basedir -g 3000 -C -B","cpu":"0.0","cpu_average":"0","mem":"0.0"},"24":{"cmdline":"s6-supervise go2rtc-healthcheck","cpu":"0.0","cpu_average":"0","mem":"0.0"},"25":{"cmdline":"s6-supervise nginx-log","cpu":"0.0","cpu_average":"0","mem":"0.0"},"26":{"cmdline":"s6-supervise s6rc-fdholder","cpu":"0.0","cpu_average":"0","mem":"0.0"},"27":{"cmdline":"s6-supervise frigate","cpu":"0.0","cpu_average":"0","mem":"0.0"},"28":{"cmdline":"s6-supervise go2rtc","cpu":"0.0","cpu_average":"0","mem":"0.0"},"29":{"cmdline":"s6-supervise frigate-log","cpu":"0.0","cpu_average":"0","mem":"0.0"},"30":{"cmdline":"s6-supervise go2rtc-log","cpu":"0.0","cpu_average":"0","mem":"0.0"},"31":{"cmdline":"s6-supervise s6rc-oneshot-runner","cpu":"0.0","cpu_average":"0","mem":"0.0"},"32":{"cmdline":"s6-supervise nginx","cpu":"0.0","cpu_average":"0","mem":"0.0"},"41":{"cmdline":"/package/admin/s6-2.11.3.2/command/s6-fdholderd -1 -i data/rules","cpu":"0.0","cpu_average":"0","mem":"0.0"},"42":{"cmdline":"/package/admin/s6/command/s6-ipcserverd -1 -- /package/admin/s6/command/s6-ipcserver-access -v0 -E -l0 -i data/rules -- /package/admin/s6/command/s6-sudod -t 30000 -- /package/admin/s6-rc/command/s6-rc-oneshot-run -l ../.. --","cpu":"0.0","cpu_average":"0","mem":"0.0"},"80":{"cmdline":"s6-log -b -- T 1 n0 s10000000 T /dev/shm/logs/frigate","cpu":"0.0","cpu_average":"0","mem":"0.0"},"81":{"cmdline":"s6-log -b -- T 1 n0 s10000000 T /dev/shm/logs/go2rtc","cpu":"0.0","cpu_average":"0","mem":"0.0"},"82":{"cmdline":"s6-log -b -- T 1 n0 s10000000 T /dev/shm/logs/nginx","cpu":"0.0","cpu_average":"0","mem":"0.0"},"89":{"cmdline":"/usr/local/go2rtc/bin/go2rtc -config=/dev/shm/go2rtc.yaml","cpu":"0.0","cpu_average":"0","mem":"0.0"},"97":{"cmdline":"python3 -u -m frigate","cpu":"3.9","cpu_average":"20","mem":"0.6"},"98":{"cmdline":"bash ./run.user go2rtc-healthcheck","cpu":"0.0","cpu_average":"0","mem":"0.0"},"110":{"cmdline":"nginx: master process nginx","cpu":"0.0","cpu_average":"0","mem":"0.0"},"142":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"144":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"145":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"146":{"cmdline":"nginx: worker process","cpu":"0.1","cpu_average":"0","mem":"0.0"},"150":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"160":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"173":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"208":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"235":{"cmdline":"nginx: cache manager process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"258":{"cmdline":"nginx: cache loader process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"452":{"cmdline":"frigate.logger ","cpu":"0.0","cpu_average":"0","mem":"0.3"},"454":{"cmdline":"frigate.recording_manager","cpu":"0.3","cpu_average":"0","mem":"0.4"},"463":{"cmdline":"/usr/bin/python3 -c from multiprocessing.resource_tracker import main;main(45)","cpu":"0.2","cpu_average":"0","mem":"0.0"},"464":{"cmdline":"frigate.detector.rknn","cpu":"30.5","cpu_average":"15","mem":"0.6"},"466":{"cmdline":"frigate.output ","cpu":"11.6","cpu_average":"0","mem":"0.4"},"470":{"cmdline":"frigate.process:cam01","cpu":"42.0","cpu_average":"23","mem":"0.5"},"472":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 2304x1296 -i pipe: -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"473":{"cmdline":"frigate.process:cam02","cpu":"44.6","cpu_average":"30","mem":"0.5"},"474":{"cmdline":"frigate.capture:cam01","cpu":"6.6","cpu_average":"0","mem":"0.4"},"478":{"cmdline":"frigate.capture:cam02","cpu":"6.1","cpu_average":"0","mem":"0.4"},"482":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 2304x1296 -i pipe: -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"483":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel rkmpp -hwaccel_output_format drm_prime -user_agent FFmpeg Frigate/0.13.2-69d9a261 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://10.10.191.81:554/user=admin_password=dnjap4epTS_channel=0_stream=0&onvif=0.sdp?real_stream -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -an /tmp/cache/cam01@%Y%m%d%H%M%S%z.mp4 -r 5 -vf scale_rkrga=w=2304:h=1296:format=yuv420p:force_original_aspect_ratio=0,hwmap=mode=read,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"7.5","cpu_average":"0","mem":"0.2"},"486":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel rkmpp -hwaccel_output_format drm_prime -user_agent FFmpeg Frigate/0.13.2-69d9a261 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://10.10.191.82:554/user=admin_password=dnjap4epTS_channel=0_stream=0&onvif=0.sdp?real_stream -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -an /tmp/cache/cam02@%Y%m%d%H%M%S%z.mp4 -r 5 -vf scale_rkrga=w=2304:h=1296:format=yuv420p:force_original_aspect_ratio=0,hwmap=mode=read,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"7.0","cpu_average":"0","mem":"0.2"},"490":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x1080 -i pipe: -f mpegts -s 1920x1080 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"17.5","cpu_average":"7","mem":"0.3"},"577":{"cmdline":"sleep 30s","cpu":"0.0","cpu_average":"0","mem":"0.0"}},"detection_fps":27.4,"detectors":{"rknn":{"detection_start":0.0,"inference_speed":20.64,"pid":464}},"processes":{"go2rtc":{"pid":89},"logger":{"pid":452},"recording":{"pid":454}},"service":{"last_updated":1715657130,"latest_version":"0.13.2","storage":{"/dev/shm":{"free":45.5,"mount_type":"tmpfs","total":64.0,"used":18.5},"/media/frigate/clips":{"free":851964.5,"mount_type":"ext4","total":938755.5,"used":48499.7},"/media/frigate/recordings":{"free":851964.5,"mount_type":"ext4","total":938755.5,"used":48499.7},"/tmp/cache":{"free":951.4,"mount_type":"tmpfs","total":953.7,"used":2.3}},"temperatures":{},"uptime":13,"version":"0.13.2-69d9a261"}} Operating systemHassOS Install methodDocker Compose Coral versionOther Any other information that may be helpfulNo response |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 2 replies
-
Have you set the environment variable in your compose file? It's not finding an env var with that name. |
Beta Was this translation helpful? Give feedback.
-
Thanks for your reply. this is my compose.yml:
This is the env from inside the container:
BTW: where can I check if Rockchip implementation in your docker-image is ready/available? |
Beta Was this translation helpful? Give feedback.
In your
env
file, you named the variableFRIGATE_MQTT_PASSWD
, but in your config you haveFRIGATE_MQTT_PASSWORD
.