mirror of
https://github.com/buanet/ioBroker.docker.git
synced 2025-12-18 02:49:01 +02:00
small enhancements for beta testing
This commit is contained in:
16
CHANGELOG.md
16
CHANGELOG.md
@@ -1,11 +1,15 @@
|
|||||||
## Changelog
|
## Changelog
|
||||||
|
|
||||||
### v9.1.0-beta.1 (03.11.2023)
|
### v9.1.0-beta.2 (coming soon)
|
||||||
* improve maintenance command by symlinking ([#390](https://github.com/buanet/ioBroker.docker/issues/390))
|
* add env PACKAGES_UPDATE and remove automatic package updates on first container start
|
||||||
* fix restore/ adding backup file selection ([#394](https://github.com/buanet/ioBroker.docker/issues/394))
|
* improve setuid/setgid handling during startup ([#397](https://github.com/buanet/ioBroker.docker/issues/397))
|
||||||
* fix calling iob start|stop with parameters
|
* move maintenance script registration to dockerfile ([#390](https://github.com/buanet/ioBroker.docker/issues/390))
|
||||||
* enhance logging in iobroker_startup.sh
|
* v9.1.0-beta.1 (03.11.2023)
|
||||||
* add error handling for user scripts
|
* improve maintenance command by symlinking ([#390](https://github.com/buanet/ioBroker.docker/issues/390))
|
||||||
|
* fix restore/ adding backup file selection ([#394](https://github.com/buanet/ioBroker.docker/issues/394))
|
||||||
|
* fix calling iob start|stop with parameters
|
||||||
|
* enhance logging in iobroker_startup.sh
|
||||||
|
* add error handling for user scripts
|
||||||
|
|
||||||
### v9.0.1 (10.10.2023)
|
### v9.0.1 (10.10.2023)
|
||||||
* fix issue with avahi setup ([#384](https://github.com/buanet/ioBroker.docker/issues/384); [#385 by @z1r0](https://github.com/buanet/ioBroker.docker/pull/385))
|
* fix issue with avahi setup ([#384](https://github.com/buanet/ioBroker.docker/issues/384); [#385 by @z1r0](https://github.com/buanet/ioBroker.docker/pull/385))
|
||||||
|
|||||||
@@ -75,6 +75,10 @@ RUN apt-get update && apt-get upgrade -y \
|
|||||||
&& chown -R iobroker:iobroker /opt/scripts /opt/userscripts \
|
&& chown -R iobroker:iobroker /opt/scripts /opt/userscripts \
|
||||||
&& chmod 755 /opt/scripts/*.sh \
|
&& chmod 755 /opt/scripts/*.sh \
|
||||||
&& chmod 755 /opt/userscripts/*.sh \
|
&& chmod 755 /opt/userscripts/*.sh \
|
||||||
|
# register maintenance command
|
||||||
|
&& ln -s /opt/scripts/maintenance.sh /bin/maintenance \
|
||||||
|
&& ln -s /opt/scripts/maintenance.sh /bin/maint \
|
||||||
|
&& ln -s /opt/scripts/maintenance.sh /bin/m \
|
||||||
# Clean up installation cache
|
# Clean up installation cache
|
||||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
|
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
|
||||||
&& apt-get autoclean -y \
|
&& apt-get autoclean -y \
|
||||||
|
|||||||
@@ -17,17 +17,18 @@ offlinemode=$OFFLINE_MODE
|
|||||||
objectsdbhost=$IOB_OBJECTSDB_HOST
|
objectsdbhost=$IOB_OBJECTSDB_HOST
|
||||||
objectsdbport=$IOB_OBJECTSDB_PORT
|
objectsdbport=$IOB_OBJECTSDB_PORT
|
||||||
objectsdbtype=$IOB_OBJECTSDB_TYPE
|
objectsdbtype=$IOB_OBJECTSDB_TYPE
|
||||||
objectsdbname=$IOB_OBJECTSDB_NAME # new for sentinel support
|
objectsdbname=$IOB_OBJECTSDB_NAME
|
||||||
objectsdbpass=$IOB_OBJECTSDB_PASS # new for auth support
|
objectsdbpass=$IOB_OBJECTSDB_PASS
|
||||||
packages=$PACKAGES
|
packages=$PACKAGES
|
||||||
|
packagesupdate=$PACKAGES_UPDATE
|
||||||
permissioncheck=$PERMISSION_CHECK
|
permissioncheck=$PERMISSION_CHECK
|
||||||
setgid=$SETGID
|
setgid=$SETGID
|
||||||
setuid=$SETUID
|
setuid=$SETUID
|
||||||
statesdbhost=$IOB_STATESDB_HOST
|
statesdbhost=$IOB_STATESDB_HOST
|
||||||
statesdbport=$IOB_STATESDB_PORT
|
statesdbport=$IOB_STATESDB_PORT
|
||||||
statesdbtype=$IOB_STATESDB_TYPE
|
statesdbtype=$IOB_STATESDB_TYPE
|
||||||
statesdbname=$IOB_STATESDB_NAME # new for sentinel support
|
statesdbname=$IOB_STATESDB_NAME
|
||||||
statesdbpass=$IOB_STATESDB_PASS # new for auth support
|
statesdbpass=$IOB_STATESDB_PASS
|
||||||
usbdevices=$USBDEVICES
|
usbdevices=$USBDEVICES
|
||||||
set -u
|
set -u
|
||||||
|
|
||||||
@@ -132,10 +133,12 @@ if [[ -f /opt/.docker_config/.first_run ]]; then
|
|||||||
# Updating Linux packages
|
# Updating Linux packages
|
||||||
if [[ "$offlinemode" = "true" ]]; then
|
if [[ "$offlinemode" = "true" ]]; then
|
||||||
echo "OFFLINE_MODE is \"true\". Skipping Linux package updates on first run."
|
echo "OFFLINE_MODE is \"true\". Skipping Linux package updates on first run."
|
||||||
else
|
|
||||||
if ! bash /opt/scripts/setup_packages.sh -update; then echo "Failed."; fi
|
|
||||||
fi
|
|
||||||
echo " "
|
echo " "
|
||||||
|
elif [[ "$packagesupdate" = "true" ]]; then
|
||||||
|
if ! bash /opt/scripts/setup_packages.sh -update; then echo "Failed."; fi
|
||||||
|
echo " "
|
||||||
|
fi
|
||||||
|
|
||||||
# Installing packages from ENV
|
# Installing packages from ENV
|
||||||
if [[ "$packages" != "" && "$offlinemode" = "true" ]]; then
|
if [[ "$packages" != "" && "$offlinemode" = "true" ]]; then
|
||||||
echo "PACKAGES is set, but OFFLINE_MODE is \"true\". Skipping Linux package installation."
|
echo "PACKAGES is set, but OFFLINE_MODE is \"true\". Skipping Linux package installation."
|
||||||
@@ -144,19 +147,13 @@ if [[ -f /opt/.docker_config/.first_run ]]; then
|
|||||||
if ! bash /opt/scripts/setup_packages.sh -install; then echo "Failed."; fi
|
if ! bash /opt/scripts/setup_packages.sh -install; then echo "Failed."; fi
|
||||||
fi
|
fi
|
||||||
echo " "
|
echo " "
|
||||||
# Register maintenance script
|
|
||||||
echo -n "Registering maintenance script as command... "
|
|
||||||
ln -s /opt/scripts/maintenance.sh /bin/maintenance
|
|
||||||
ln -s /opt/scripts/maintenance.sh /bin/maint
|
|
||||||
ln -s /opt/scripts/maintenance.sh /bin/m
|
|
||||||
echo "Done."
|
|
||||||
else
|
else
|
||||||
echo "This is not the first run of this container. Skipping first run preparation."
|
echo "This is not the first run of this container. Skipping first run preparation."
|
||||||
fi
|
fi
|
||||||
echo " "
|
echo " "
|
||||||
|
|
||||||
# Setting UID and/ or GID
|
# Setting UID and/ or GID
|
||||||
if [[ "$setgid" != "$(cat /etc/group | grep 'iobroker:' | cut -d':' -f3)" || "$setuid" != "$(cat /etc/passwd | grep 'iobroker:' | cut -d':' -f3)" ]]; then
|
if [[ "$setgid" != "$(id -u iobroker)" || "$setuid" != "$(id -u iobroker)" ]]; then
|
||||||
echo "SETUID and/ or SETGID are set to custom values."
|
echo "SETUID and/ or SETGID are set to custom values."
|
||||||
echo -n "Changing UID to \"""$setuid""\" and GID to \"""$setgid""\"... "
|
echo -n "Changing UID to \"""$setuid""\" and GID to \"""$setgid""\"... "
|
||||||
usermod -u "$setuid" iobroker
|
usermod -u "$setuid" iobroker
|
||||||
|
|||||||
@@ -124,6 +124,7 @@ You could use environment variables to auto configure your ioBroker container on
|
|||||||
* `LC_ALL` (optional, default: de_DE.UTF-8) The following locales are pre-generated: de_DE.UTF-8, en_US.UTF-8
|
* `LC_ALL` (optional, default: de_DE.UTF-8) The following locales are pre-generated: de_DE.UTF-8, en_US.UTF-8
|
||||||
* `OFFLINE_MODE` (optional) Set `true` if your container has no or limited internet connection
|
* `OFFLINE_MODE` (optional) Set `true` if your container has no or limited internet connection
|
||||||
* `PACKAGES` (optional) Install additional Linux packages to your container, packages should be separated by whitespace like this: `package1 package2 package3`.
|
* `PACKAGES` (optional) Install additional Linux packages to your container, packages should be separated by whitespace like this: `package1 package2 package3`.
|
||||||
|
* `PACKAGES_UPDATE` (optional) Set `true` if you want to apply Linux package updates at the first start of a new container.
|
||||||
* `PERMISSION_CHECK` (optional, default: true) Set "false" to skip checking and correcting all relevant permissions on container startup (Use at own risk!!!)
|
* `PERMISSION_CHECK` (optional, default: true) Set "false" to skip checking and correcting all relevant permissions on container startup (Use at own risk!!!)
|
||||||
* `SETGID` (default: 1000) In some cases it might be useful to specify the gid of the containers iobroker user to match an existing group on the docker host
|
* `SETGID` (default: 1000) In some cases it might be useful to specify the gid of the containers iobroker user to match an existing group on the docker host
|
||||||
* `SETUID` (default: 1000) In some cases it might be useful to specify the uid of the containers iobroker user to match an existing user on the docker host
|
* `SETUID` (default: 1000) In some cases it might be useful to specify the uid of the containers iobroker user to match an existing user on the docker host
|
||||||
|
|||||||
@@ -126,6 +126,7 @@ You could use environment variables to auto configure your ioBroker container on
|
|||||||
* `LC_ALL` (optional, default: de_DE.UTF-8) The following locales are pre-generated: de_DE.UTF-8, en_US.UTF-8
|
* `LC_ALL` (optional, default: de_DE.UTF-8) The following locales are pre-generated: de_DE.UTF-8, en_US.UTF-8
|
||||||
* `OFFLINE_MODE` (optional) Set `true` if your container has no or limited internet connection
|
* `OFFLINE_MODE` (optional) Set `true` if your container has no or limited internet connection
|
||||||
* `PACKAGES` (optional) Install additional Linux packages to your container, packages should be separated by whitespace like this: `package1 package2 package3`.
|
* `PACKAGES` (optional) Install additional Linux packages to your container, packages should be separated by whitespace like this: `package1 package2 package3`.
|
||||||
|
* `PACKAGES_UPDATE` (optional) Set `true` if you want to apply Linux package updates at the first start of a new container.
|
||||||
* `PERMISSION_CHECK` (optional, default: true) Set "false" to skip checking and correcting all relevant permissions on container startup (Use at own risk!!!)
|
* `PERMISSION_CHECK` (optional, default: true) Set "false" to skip checking and correcting all relevant permissions on container startup (Use at own risk!!!)
|
||||||
* `SETGID` (default: 1000) In some cases it might be useful to specify the gid of the containers iobroker user to match an existing group on the docker host
|
* `SETGID` (default: 1000) In some cases it might be useful to specify the gid of the containers iobroker user to match an existing group on the docker host
|
||||||
* `SETUID` (default: 1000) In some cases it might be useful to specify the uid of the containers iobroker user to match an existing user on the docker host
|
* `SETUID` (default: 1000) In some cases it might be useful to specify the uid of the containers iobroker user to match an existing user on the docker host
|
||||||
|
|||||||
Reference in New Issue
Block a user