История изменений
Исправление bvn13, (текущая версия) :
В общем. Проблема частично описана в https://github.com/nextcloud/docker/issues/820 , частично в https://github.com/nextcloud/server/issues/1599
Звучит так: после перезапуска контейнера клауда все приложения, которые я понаставил и понастроил, они все слетают. Видятся как «установлено», но ни в меню сверху нет, ни при открытии урла приложения /app/calendar
(например) - не работают (редиректят на дашборд).
Я подумал, что можно тупо перещёлкнуть приложения - выкл + вкл.
Но не тут-то было, оказывается.
Смастерил свой контейнер. (композ выше)
$ cat Dockerfile
FROM nextcloud:23.0.3-apache
WORKDIR /var/www/html
COPY ./script/enable-apps.sh /docker-entrypoint-initdb.d/enable-apps.sh
RUN chmod u+x /docker-entrypoint-initdb.d/enable-apps.sh
ENTRYPOINT ["/entrypoint.sh"]
CMD ["apache2-foreground"]
А скрипт вот такой.
$ cat script/enable-apps.sh
#!/bin/bash
run_as() {
if [ "$(id -u)" = 0 ]; then
su -p www-data -s /bin/sh -c "$1"
else
sh -c "$1"
fi
}
while [[ "$(curl -s -o /dev/null -w ''%{http_code}'' localhost:80/index.php/login)" != "200" ]]; do sleep 5; done
run_as ' \
for app in $(ls /var/www/html/apps/); do \
echo "Disabling $app..."
php /var/www/html/occ app:disable $app
echo "Installing $app..."
php /var/www/html/occ app:install $app
echo "Enabling $app..."
php /var/www/html/occ app:enable $app
done'
Вот тут https://stackoverflow.com/a/43975603/2798461 было написано, что есть спец дира, из которой запускаются скрипты после старта - не могу удостовериться.
Я логинюсь внутрь контейнера (для достоверности), запускаю свой скрипт, он проходит, но приложения как были нерабочими, так и остаются.
Есть мысли?
Исходная версия bvn13, :
В общем. Проблема частично описана в https://github.com/nextcloud/docker/issues/820 , частично в https://github.com/nextcloud/server/issues/1599
Звучит так: после перезапуска контейнера клауда все приложения, которые я понаставил и понастроил, они все слетают. Видятся как «установлено», но ни в меню сверху нет, ни при открытии урла приложения /app/calendar
(например) - не работают (редиректят на дашборд).
Я подумал, что можно тупо пересчелкнуть приложения - выкл + вкл.
Но не тут-то было, оказывается.
Смастерил свой контейнер. (композ выше)
$ cat Dockerfile
FROM nextcloud:23.0.3-apache
WORKDIR /var/www/html
COPY ./script/enable-apps.sh /docker-entrypoint-initdb.d/enable-apps.sh
RUN chmod u+x /docker-entrypoint-initdb.d/enable-apps.sh
ENTRYPOINT ["/entrypoint.sh"]
CMD ["apache2-foreground"]
А скрипт вот такой.
$ cat script/enable-apps.sh
#!/bin/bash
run_as() {
if [ "$(id -u)" = 0 ]; then
su -p www-data -s /bin/sh -c "$1"
else
sh -c "$1"
fi
}
while [[ "$(curl -s -o /dev/null -w ''%{http_code}'' localhost:80/index.php/login)" != "200" ]]; do sleep 5; done
run_as ' \
for app in $(ls /var/www/html/apps/); do \
echo "Disabling $app..."
php /var/www/html/occ app:disable $app
echo "Installing $app..."
php /var/www/html/occ app:install $app
echo "Enabling $app..."
php /var/www/html/occ app:enable $app
done'
Вот тут https://stackoverflow.com/a/43975603/2798461 было написано, что есть спец дира, из которой запускаются скрипты после старта - не могу удостовериться.
Я логинюсь внутрь контейнера (для достоверности), запускаю свой скрипт, он проходит, но приложения как были нерабочими, так и остаются.
Есть мысли?