mirror of
https://github.com/coollabsio/coolify.git
synced 2026-11-06 13:10:37 -04:00
fix(service): recreate the Mosquitto password file on each start
Mosquitto 2.1 opens the file for `mosquitto_passwd -c` with O_EXCL, so the template failed with "File exists" after `touch`. Delete the file before `-c`, so each start writes a new file with only the current user. Closes #11691 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
19afd36084
commit
e853f3d136
@@ -37,9 +37,7 @@ services:
|
||||
echo ''allow_anonymous ''$ALLOW_ANONYMOUS >> /mosquitto/config/mosquitto.conf;
|
||||
if [ -n ''$SERVICE_USER_MOSQUITTO'' ] && [ -n ''$SERVICE_PASSWORD_MOSQUITTO'' ]; then
|
||||
echo ''password_file /mosquitto/config/passwords'' >> /mosquitto/config/mosquitto.conf &&
|
||||
touch /mosquitto/config/passwords &&
|
||||
chmod 0700 /mosquitto/config/passwords &&
|
||||
chown root:root /mosquitto/config/passwords &&
|
||||
rm -f /mosquitto/config/passwords &&
|
||||
mosquitto_passwd -b -c /mosquitto/config/passwords $SERVICE_USER_MOSQUITTO $SERVICE_PASSWORD_MOSQUITTO &&
|
||||
chown mosquitto:mosquitto /mosquitto/config/passwords;
|
||||
fi &&
|
||||
|
||||
@@ -3500,7 +3500,7 @@
|
||||
"mosquitto": {
|
||||
"documentation": "https://mosquitto.org/documentation/?utm_source=coolify.io",
|
||||
"slogan": "Mosquitto is lightweight and suitable for use on all devices, from low-power single-board computers to full servers.",
|
||||
"compose": "c2VydmljZXM6CiAgbW9zcXVpdHRvOgogICAgaW1hZ2U6IGVjbGlwc2UtbW9zcXVpdHRvCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX1VSTF9NT1NRVUlUVE9fMTg4MwogICAgICAtICdNUVRUX1VTRVJOQU1FPSR7U0VSVklDRV9VU0VSX01PU1FVSVRUT30nCiAgICAgIC0gJ01RVFRfUEFTU1dPUkQ9JHtTRVJWSUNFX1BBU1NXT1JEX01PU1FVSVRUT30nCiAgICAgIC0gJ1JFUVVJUkVfQ0VSVElGSUNBVEU9JHtSRVFVSVJFX0NFUlRJRklDQVRFOi1mYWxzZX0nCiAgICAgIC0gJ0FMTE9XX0FOT05ZTU9VUz0ke0FMTE9XX0FOT05ZTU9VUzotdHJ1ZX0nCiAgICB2b2x1bWVzOgogICAgICAtICcuL21vc3F1aXR0by9jb25maWc6L21vc3F1aXR0by9jb25maWcnCiAgICAgIC0gJy4vY2VydHM6L2NlcnRzJwogICAgcG9ydHM6CiAgICAgIC0gJzg4ODM6ODg4MycKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAnZXhpdCAwJwogICAgICBpbnRlcnZhbDogMzBzCiAgICAgIHRpbWVvdXQ6IDEwcwogICAgICByZXRyaWVzOiAzCiAgICBlbnRyeXBvaW50OiAic2ggLWMgXCIgaWYgWyAnJFJFUVVJUkVfQ0VSVElGSUNBVEUnID0gJ3RydWUnIF07IHRoZW4gZWNobyAnbGlzdGVuZXIgODg4MycgPiAvbW9zcXVpdHRvL2NvbmZpZy9tb3NxdWl0dG8uY29uZiAmJiBlY2hvICdjYWZpbGUgL2NlcnRzL2NhLmNydCcgPj4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmYgJiYgZWNobyAnY2VydGZpbGUgL2NlcnRzL3NlcnZlci5jcnQnID4+IC9tb3NxdWl0dG8vY29uZmlnL21vc3F1aXR0by5jb25mICYmIGVjaG8gJ2tleWZpbGUgIC9jZXJ0cy9zZXJ2ZXIua2V5JyA+PiAvbW9zcXVpdHRvL2NvbmZpZy9tb3NxdWl0dG8uY29uZjsgZWxzZSBlY2hvICdsaXN0ZW5lciAxODgzJyA+IC9tb3NxdWl0dG8vY29uZmlnL21vc3F1aXR0by5jb25mOyBmaSAmJiBlY2hvICdyZXF1aXJlX2NlcnRpZmljYXRlICckUkVRVUlSRV9DRVJUSUZJQ0FURSA+PiAvbW9zcXVpdHRvL2NvbmZpZy9tb3NxdWl0dG8uY29uZiAmJiBlY2hvICdhbGxvd19hbm9ueW1vdXMgJyRBTExPV19BTk9OWU1PVVMgPj4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmY7IGlmIFsgLW4gJyRTRVJWSUNFX1VTRVJfTU9TUVVJVFRPJyBdICYmIFsgLW4gJyRTRVJWSUNFX1BBU1NXT1JEX01PU1FVSVRUTycgXTsgdGhlbiBlY2hvICdwYXNzd29yZF9maWxlIC9tb3NxdWl0dG8vY29uZmlnL3Bhc3N3b3JkcycgPj4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmYgJiYgdG91Y2ggL21vc3F1aXR0by9jb25maWcvcGFzc3dvcmRzICYmIGNobW9kIDA3MDAgL21vc3F1aXR0by9jb25maWcvcGFzc3dvcmRzICYmIGNob3duIHJvb3Q6cm9vdCAvbW9zcXVpdHRvL2NvbmZpZy9wYXNzd29yZHMgJiYgbW9zcXVpdHRvX3Bhc3N3ZCAtYiAtYyAvbW9zcXVpdHRvL2NvbmZpZy9wYXNzd29yZHMgJFNFUlZJQ0VfVVNFUl9NT1NRVUlUVE8gJFNFUlZJQ0VfUEFTU1dPUkRfTU9TUVVJVFRPICYmIGNob3duIG1vc3F1aXR0bzptb3NxdWl0dG8gL21vc3F1aXR0by9jb25maWcvcGFzc3dvcmRzOyBmaSAmJiBleGVjIG1vc3F1aXR0byAtYyAvbW9zcXVpdHRvL2NvbmZpZy9tb3NxdWl0dG8uY29uZiBcIiIKICAgIGxhYmVsczoKICAgICAgLSB0cmFlZmlrLnRjcC5yb3V0ZXJzLm1xdHQuZW50cnlwb2ludHM9bXF0dAogICAgICAtIHRyYWVmaWsudGNwLnJvdXRlcnMubXF0dHMuZW50cnlwb2ludHM9bXF0dHMK",
|
||||
"compose": "c2VydmljZXM6CiAgbW9zcXVpdHRvOgogICAgaW1hZ2U6IGVjbGlwc2UtbW9zcXVpdHRvCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX1VSTF9NT1NRVUlUVE9fMTg4MwogICAgICAtICdNUVRUX1VTRVJOQU1FPSR7U0VSVklDRV9VU0VSX01PU1FVSVRUT30nCiAgICAgIC0gJ01RVFRfUEFTU1dPUkQ9JHtTRVJWSUNFX1BBU1NXT1JEX01PU1FVSVRUT30nCiAgICAgIC0gJ1JFUVVJUkVfQ0VSVElGSUNBVEU9JHtSRVFVSVJFX0NFUlRJRklDQVRFOi1mYWxzZX0nCiAgICAgIC0gJ0FMTE9XX0FOT05ZTU9VUz0ke0FMTE9XX0FOT05ZTU9VUzotdHJ1ZX0nCiAgICB2b2x1bWVzOgogICAgICAtICcuL21vc3F1aXR0by9jb25maWc6L21vc3F1aXR0by9jb25maWcnCiAgICAgIC0gJy4vY2VydHM6L2NlcnRzJwogICAgcG9ydHM6CiAgICAgIC0gJzg4ODM6ODg4MycKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAnZXhpdCAwJwogICAgICBpbnRlcnZhbDogMzBzCiAgICAgIHRpbWVvdXQ6IDEwcwogICAgICByZXRyaWVzOiAzCiAgICBlbnRyeXBvaW50OiAic2ggLWMgXCIgaWYgWyAnJFJFUVVJUkVfQ0VSVElGSUNBVEUnID0gJ3RydWUnIF07IHRoZW4gZWNobyAnbGlzdGVuZXIgODg4MycgPiAvbW9zcXVpdHRvL2NvbmZpZy9tb3NxdWl0dG8uY29uZiAmJiBlY2hvICdjYWZpbGUgL2NlcnRzL2NhLmNydCcgPj4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmYgJiYgZWNobyAnY2VydGZpbGUgL2NlcnRzL3NlcnZlci5jcnQnID4+IC9tb3NxdWl0dG8vY29uZmlnL21vc3F1aXR0by5jb25mICYmIGVjaG8gJ2tleWZpbGUgIC9jZXJ0cy9zZXJ2ZXIua2V5JyA+PiAvbW9zcXVpdHRvL2NvbmZpZy9tb3NxdWl0dG8uY29uZjsgZWxzZSBlY2hvICdsaXN0ZW5lciAxODgzJyA+IC9tb3NxdWl0dG8vY29uZmlnL21vc3F1aXR0by5jb25mOyBmaSAmJiBlY2hvICdyZXF1aXJlX2NlcnRpZmljYXRlICckUkVRVUlSRV9DRVJUSUZJQ0FURSA+PiAvbW9zcXVpdHRvL2NvbmZpZy9tb3NxdWl0dG8uY29uZiAmJiBlY2hvICdhbGxvd19hbm9ueW1vdXMgJyRBTExPV19BTk9OWU1PVVMgPj4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmY7IGlmIFsgLW4gJyRTRVJWSUNFX1VTRVJfTU9TUVVJVFRPJyBdICYmIFsgLW4gJyRTRVJWSUNFX1BBU1NXT1JEX01PU1FVSVRUTycgXTsgdGhlbiBlY2hvICdwYXNzd29yZF9maWxlIC9tb3NxdWl0dG8vY29uZmlnL3Bhc3N3b3JkcycgPj4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmYgJiYgcm0gLWYgL21vc3F1aXR0by9jb25maWcvcGFzc3dvcmRzICYmIG1vc3F1aXR0b19wYXNzd2QgLWIgLWMgL21vc3F1aXR0by9jb25maWcvcGFzc3dvcmRzICRTRVJWSUNFX1VTRVJfTU9TUVVJVFRPICRTRVJWSUNFX1BBU1NXT1JEX01PU1FVSVRUTyAmJiBjaG93biBtb3NxdWl0dG86bW9zcXVpdHRvIC9tb3NxdWl0dG8vY29uZmlnL3Bhc3N3b3JkczsgZmkgJiYgZXhlYyBtb3NxdWl0dG8gLWMgL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmYgXCIiCiAgICBsYWJlbHM6CiAgICAgIC0gdHJhZWZpay50Y3Aucm91dGVycy5tcXR0LmVudHJ5cG9pbnRzPW1xdHQKICAgICAgLSB0cmFlZmlrLnRjcC5yb3V0ZXJzLm1xdHRzLmVudHJ5cG9pbnRzPW1xdHRzCg==",
|
||||
"tags": [
|
||||
"mosquitto",
|
||||
"mqtt",
|
||||
@@ -4735,7 +4735,7 @@
|
||||
"category": "productivity",
|
||||
"logo": "svgs/rxresume.svg",
|
||||
"minversion": "0.0.0",
|
||||
"template_last_updated_at": "2026-10-15T23:32:06+02:00",
|
||||
"template_last_updated_at": "2026-10-23T22:22:32+02:00",
|
||||
"port": "3000"
|
||||
},
|
||||
"readeck": {
|
||||
|
||||
@@ -3500,7 +3500,7 @@
|
||||
"mosquitto": {
|
||||
"documentation": "https://mosquitto.org/documentation/?utm_source=coolify.io",
|
||||
"slogan": "Mosquitto is lightweight and suitable for use on all devices, from low-power single-board computers to full servers.",
|
||||
"compose": "c2VydmljZXM6CiAgbW9zcXVpdHRvOgogICAgaW1hZ2U6IGVjbGlwc2UtbW9zcXVpdHRvCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fTU9TUVVJVFRPXzE4ODMKICAgICAgLSAnTVFUVF9VU0VSTkFNRT0ke1NFUlZJQ0VfVVNFUl9NT1NRVUlUVE99JwogICAgICAtICdNUVRUX1BBU1NXT1JEPSR7U0VSVklDRV9QQVNTV09SRF9NT1NRVUlUVE99JwogICAgICAtICdSRVFVSVJFX0NFUlRJRklDQVRFPSR7UkVRVUlSRV9DRVJUSUZJQ0FURTotZmFsc2V9JwogICAgICAtICdBTExPV19BTk9OWU1PVVM9JHtBTExPV19BTk9OWU1PVVM6LXRydWV9JwogICAgdm9sdW1lczoKICAgICAgLSAnLi9tb3NxdWl0dG8vY29uZmlnOi9tb3NxdWl0dG8vY29uZmlnJwogICAgICAtICcuL2NlcnRzOi9jZXJ0cycKICAgIHBvcnRzOgogICAgICAtICc4ODgzOjg4ODMnCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ2V4aXQgMCcKICAgICAgaW50ZXJ2YWw6IDMwcwogICAgICB0aW1lb3V0OiAxMHMKICAgICAgcmV0cmllczogMwogICAgZW50cnlwb2ludDogInNoIC1jIFwiIGlmIFsgJyRSRVFVSVJFX0NFUlRJRklDQVRFJyA9ICd0cnVlJyBdOyB0aGVuIGVjaG8gJ2xpc3RlbmVyIDg4ODMnID4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmYgJiYgZWNobyAnY2FmaWxlIC9jZXJ0cy9jYS5jcnQnID4+IC9tb3NxdWl0dG8vY29uZmlnL21vc3F1aXR0by5jb25mICYmIGVjaG8gJ2NlcnRmaWxlIC9jZXJ0cy9zZXJ2ZXIuY3J0JyA+PiAvbW9zcXVpdHRvL2NvbmZpZy9tb3NxdWl0dG8uY29uZiAmJiBlY2hvICdrZXlmaWxlICAvY2VydHMvc2VydmVyLmtleScgPj4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmY7IGVsc2UgZWNobyAnbGlzdGVuZXIgMTg4MycgPiAvbW9zcXVpdHRvL2NvbmZpZy9tb3NxdWl0dG8uY29uZjsgZmkgJiYgZWNobyAncmVxdWlyZV9jZXJ0aWZpY2F0ZSAnJFJFUVVJUkVfQ0VSVElGSUNBVEUgPj4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmYgJiYgZWNobyAnYWxsb3dfYW5vbnltb3VzICckQUxMT1dfQU5PTllNT1VTID4+IC9tb3NxdWl0dG8vY29uZmlnL21vc3F1aXR0by5jb25mOyBpZiBbIC1uICckU0VSVklDRV9VU0VSX01PU1FVSVRUTycgXSAmJiBbIC1uICckU0VSVklDRV9QQVNTV09SRF9NT1NRVUlUVE8nIF07IHRoZW4gZWNobyAncGFzc3dvcmRfZmlsZSAvbW9zcXVpdHRvL2NvbmZpZy9wYXNzd29yZHMnID4+IC9tb3NxdWl0dG8vY29uZmlnL21vc3F1aXR0by5jb25mICYmIHRvdWNoIC9tb3NxdWl0dG8vY29uZmlnL3Bhc3N3b3JkcyAmJiBjaG1vZCAwNzAwIC9tb3NxdWl0dG8vY29uZmlnL3Bhc3N3b3JkcyAmJiBjaG93biByb290OnJvb3QgL21vc3F1aXR0by9jb25maWcvcGFzc3dvcmRzICYmIG1vc3F1aXR0b19wYXNzd2QgLWIgLWMgL21vc3F1aXR0by9jb25maWcvcGFzc3dvcmRzICRTRVJWSUNFX1VTRVJfTU9TUVVJVFRPICRTRVJWSUNFX1BBU1NXT1JEX01PU1FVSVRUTyAmJiBjaG93biBtb3NxdWl0dG86bW9zcXVpdHRvIC9tb3NxdWl0dG8vY29uZmlnL3Bhc3N3b3JkczsgZmkgJiYgZXhlYyBtb3NxdWl0dG8gLWMgL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmYgXCIiCiAgICBsYWJlbHM6CiAgICAgIC0gdHJhZWZpay50Y3Aucm91dGVycy5tcXR0LmVudHJ5cG9pbnRzPW1xdHQKICAgICAgLSB0cmFlZmlrLnRjcC5yb3V0ZXJzLm1xdHRzLmVudHJ5cG9pbnRzPW1xdHRzCg==",
|
||||
"compose": "c2VydmljZXM6CiAgbW9zcXVpdHRvOgogICAgaW1hZ2U6IGVjbGlwc2UtbW9zcXVpdHRvCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fTU9TUVVJVFRPXzE4ODMKICAgICAgLSAnTVFUVF9VU0VSTkFNRT0ke1NFUlZJQ0VfVVNFUl9NT1NRVUlUVE99JwogICAgICAtICdNUVRUX1BBU1NXT1JEPSR7U0VSVklDRV9QQVNTV09SRF9NT1NRVUlUVE99JwogICAgICAtICdSRVFVSVJFX0NFUlRJRklDQVRFPSR7UkVRVUlSRV9DRVJUSUZJQ0FURTotZmFsc2V9JwogICAgICAtICdBTExPV19BTk9OWU1PVVM9JHtBTExPV19BTk9OWU1PVVM6LXRydWV9JwogICAgdm9sdW1lczoKICAgICAgLSAnLi9tb3NxdWl0dG8vY29uZmlnOi9tb3NxdWl0dG8vY29uZmlnJwogICAgICAtICcuL2NlcnRzOi9jZXJ0cycKICAgIHBvcnRzOgogICAgICAtICc4ODgzOjg4ODMnCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ2V4aXQgMCcKICAgICAgaW50ZXJ2YWw6IDMwcwogICAgICB0aW1lb3V0OiAxMHMKICAgICAgcmV0cmllczogMwogICAgZW50cnlwb2ludDogInNoIC1jIFwiIGlmIFsgJyRSRVFVSVJFX0NFUlRJRklDQVRFJyA9ICd0cnVlJyBdOyB0aGVuIGVjaG8gJ2xpc3RlbmVyIDg4ODMnID4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmYgJiYgZWNobyAnY2FmaWxlIC9jZXJ0cy9jYS5jcnQnID4+IC9tb3NxdWl0dG8vY29uZmlnL21vc3F1aXR0by5jb25mICYmIGVjaG8gJ2NlcnRmaWxlIC9jZXJ0cy9zZXJ2ZXIuY3J0JyA+PiAvbW9zcXVpdHRvL2NvbmZpZy9tb3NxdWl0dG8uY29uZiAmJiBlY2hvICdrZXlmaWxlICAvY2VydHMvc2VydmVyLmtleScgPj4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmY7IGVsc2UgZWNobyAnbGlzdGVuZXIgMTg4MycgPiAvbW9zcXVpdHRvL2NvbmZpZy9tb3NxdWl0dG8uY29uZjsgZmkgJiYgZWNobyAncmVxdWlyZV9jZXJ0aWZpY2F0ZSAnJFJFUVVJUkVfQ0VSVElGSUNBVEUgPj4gL21vc3F1aXR0by9jb25maWcvbW9zcXVpdHRvLmNvbmYgJiYgZWNobyAnYWxsb3dfYW5vbnltb3VzICckQUxMT1dfQU5PTllNT1VTID4+IC9tb3NxdWl0dG8vY29uZmlnL21vc3F1aXR0by5jb25mOyBpZiBbIC1uICckU0VSVklDRV9VU0VSX01PU1FVSVRUTycgXSAmJiBbIC1uICckU0VSVklDRV9QQVNTV09SRF9NT1NRVUlUVE8nIF07IHRoZW4gZWNobyAncGFzc3dvcmRfZmlsZSAvbW9zcXVpdHRvL2NvbmZpZy9wYXNzd29yZHMnID4+IC9tb3NxdWl0dG8vY29uZmlnL21vc3F1aXR0by5jb25mICYmIHJtIC1mIC9tb3NxdWl0dG8vY29uZmlnL3Bhc3N3b3JkcyAmJiBtb3NxdWl0dG9fcGFzc3dkIC1iIC1jIC9tb3NxdWl0dG8vY29uZmlnL3Bhc3N3b3JkcyAkU0VSVklDRV9VU0VSX01PU1FVSVRUTyAkU0VSVklDRV9QQVNTV09SRF9NT1NRVUlUVE8gJiYgY2hvd24gbW9zcXVpdHRvOm1vc3F1aXR0byAvbW9zcXVpdHRvL2NvbmZpZy9wYXNzd29yZHM7IGZpICYmIGV4ZWMgbW9zcXVpdHRvIC1jIC9tb3NxdWl0dG8vY29uZmlnL21vc3F1aXR0by5jb25mIFwiIgogICAgbGFiZWxzOgogICAgICAtIHRyYWVmaWsudGNwLnJvdXRlcnMubXF0dC5lbnRyeXBvaW50cz1tcXR0CiAgICAgIC0gdHJhZWZpay50Y3Aucm91dGVycy5tcXR0cy5lbnRyeXBvaW50cz1tcXR0cwo=",
|
||||
"tags": [
|
||||
"mosquitto",
|
||||
"mqtt",
|
||||
@@ -4735,7 +4735,7 @@
|
||||
"category": "productivity",
|
||||
"logo": "svgs/rxresume.svg",
|
||||
"minversion": "0.0.0",
|
||||
"template_last_updated_at": "2026-10-15T23:32:06+02:00",
|
||||
"template_last_updated_at": "2026-10-23T22:22:32+02:00",
|
||||
"port": "3000"
|
||||
},
|
||||
"readeck": {
|
||||
|
||||
Reference in New Issue
Block a user