Привет,
Я попытался обновить Discourse, выполнив ./launcher rebuild app, следуя инструкции с Manually update Discourse and Docker image to latest
Но получил ошибку ENOENT.
Чтобы исправить ситуацию, я выполнил следующие команды:
dpkg-reconfigure -plow unattended-upgrades
apt-get update
apt-get dist-upgrade
wget -qO- https://get.docker.com/ | sh
Однако ошибка осталась.
Я не могу её исправить. ![]()
Логи здесь.
dstest:/var/discourse$ sudo ./launcher rebuild app
Обеспечение актуальности лаунчера
Получение origin
Лаунчер актуален
Остановка старого контейнера
+ /usr/bin/docker stop -t 60 app
app
cd /pups && git pull && /pups/bin/pups --stdin
Уже актуально.
I, [2020-11-13T07:34:54.569773 #1] INFO -- : Загрузка --stdin
I, [2020-11-13T07:34:54.576058 #1] INFO -- :
> locale-gen $LANG && update-locale
I, [2020-11-13T07:34:54.676810 #1] INFO -- : Генерация локалей (это может занять время)...
Генерация завершена.
I, [2020-11-13T07:34:54.677475 #1] INFO -- :
> mkdir -p /shared/postgres_run
I, [2020-11-13T07:34:54.702215 #1] INFO -- :
> chown postgres:postgres /shared/postgres_run
I, [2020-11-13T07:34:54.712895 #1] INFO -- :
> chmod 775 /shared/postgres_run
I, [2020-11-13T07:34:54.717105 #1] INFO -- :
> rm -fr /var/run/postgresql
I, [2020-11-13T07:34:54.719943 #1] INFO -- :
> ln -s /shared/postgres_run /var/run/postgresql
I, [2020-11-13T07:34:54.723863 #1] INFO -- :
> socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres уже запущен, остановите контейнер ; exit 1
2020/11/13 07:34:54 socat[27] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): Нет такого файла или каталога
I, [2020-11-13T07:34:54.791451 #1] INFO -- :
> rm -fr /shared/postgres_run/.s*
I, [2020-11-13T07:34:54.795116 #1] INFO -- :
> rm -fr /shared/postgres_run/*.pid
I, [2020-11-13T07:34:54.798154 #1] INFO -- :
> mkdir -p /shared/postgres_run/12-main.pg_stat_tmp
I, [2020-11-13T07:34:54.800772 #1] INFO -- :
> chown postgres:postgres /shared/postgres_run/12-main.pg_stat_tmp
I, [2020-11-13T07:34:54.803400 #1] INFO -- :
> File > /etc/service/postgres/run chmod: +x chown:
I, [2020-11-13T07:34:54.811426 #1] INFO -- : File > /etc/service/postgres/log/run chmod: +x chown:
I, [2020-11-13T07:34:54.815457 #1] INFO -- : File > /etc/runit/3.d/99-postgres chmod: +x chown:
I, [2020-11-13T07:34:54.819414 #1] INFO -- : File > /root/upgrade_postgres chmod: +x chown:
I, [2020-11-13T07:34:54.820021 #1] INFO -- :
> chown -R root /var/lib/postgresql/12/main
I, [2020-11-13T07:34:58.099992 #1] INFO -- :
> [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/12/bin/initdb -D /shared/postgres_data || exit 0
I, [2020-11-13T07:34:58.103259 #1] INFO -- :
> chown -R postgres:postgres /shared/postgres_data
I, [2020-11-13T07:34:58.125185 #1] INFO -- :
> chown -R postgres:postgres /var/run/postgresql
I, [2020-11-13T07:34:58.128600 #1] INFO -- :
> /root/upgrade_postgres
I, [2020-11-13T07:34:58.133295 #1] INFO -- :
> rm /root/upgrade_postgres
I, [2020-11-13T07:34:58.135503 #1] INFO -- :
> Замена data_directory = '/var/lib/postgresql/12/main' на data_directory = '/shared/postgres_data' в /etc/postgresql/12/main/postgresql.conf
I, [2020-11-13T07:34:58.136723 #1] INFO -- : Замена (?-mix:#?listen_addresses *=.*) на listen_addresses = '*' в /etc/postgresql/12/main/postgresql.conf
I, [2020-11-13T07:34:58.137998 #1] INFO -- : Замена (?-mix:#?synchronous_commit *=.*) на synchronous_commit = $db_synchronous_commit в /etc/postgresql/12/main/postgresql.conf
I, [2020-11-13T07:34:58.138960 #1] INFO -- : Замена (?-mix:#?shared_buffers *=.*) на shared_buffers = $db_shared_buffers в /etc/postgresql/12/main/postgresql.conf
I, [2020-11-13T07:34:58.139939 #1] INFO -- : Замена (?-mix:#?work_mem *=.*) на work_mem = $db_work_mem в /etc/postgresql/12/main/postgresql.conf
I, [2020-11-13T07:34:58.140867 #1] INFO -- : Замена (?-mix:#?default_text_search_config *=.*) на default_text_search_config = '$db_default_text_search_config' в /etc/postgresql/12/main/postgresql.conf
I, [2020-11-13T07:34:58.141833 #1] INFO -- :
> install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2020-11-13T07:34:58.144916 #1] INFO -- :
> Замена (?-mix:#?checkpoint_segments *=.*) на checkpoint_segments = $db_checkpoint_segments в /etc/postgresql/12/main/postgresql.conf
I, [2020-11-13T07:34:58.146076 #1] INFO -- : Замена (?-mix:#?logging_collector *=.*) на logging_collector = $db_logging_collector в /etc/postgresql/12/main/postgresql.conf
I, [2020-11-13T07:34:58.147118 #1] INFO -- : Замена (?-mix:#?log_min_duration_statement *=.*) на log_min_duration_statement = $db_log_min_duration_statement в /etc/postgresql/12/main/postgresql.conf
I, [2020-11-13T07:34:58.162784 #1] INFO -- : Замена (?-mix:^#local +replication +postgres +peer$) на local replication postgres peer в /etc/postgresql/12/main/pg_hba.conf
I, [2020-11-13T07:34:58.163691 #1] INFO -- : Замена (?-mix:^host.*all.*all.*127.*$) на host all all 0.0.0.0/0 md5 в /etc/postgresql/12/main/pg_hba.conf
I, [2020-11-13T07:34:58.164784 #1] INFO -- :
> HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/12/bin/postmaster -D /etc/postgresql/12/main
I, [2020-11-13T07:34:58.166947 #1] INFO -- :
> sleep 5
2020-11-13 07:34:58.208 UTC [50] LOG: запуск PostgreSQL 12.4 (Debian 12.4-1.pgdg100+1) на x86_64-pc-linux-gnu, скомпилирован gcc (Debian 8.3.0-6) 8.3.0, 64-bit
2020-11-13 07:34:58.208 UTC [50] LOG: прослушивание IPv4 адреса "0.0.0.0", порт 5432
2020-11-13 07:34:58.209 UTC [50] LOG: прослушивание IPv6 адреса "::", порт 5432
2020-11-13 07:34:58.218 UTC [50] LOG: прослушивание Unix сокета "/var/run/postgresql/.s.PGSQL.5432"
2020-11-13 07:34:58.302 UTC [53] LOG: система баз данных была выключена в 2020-11-13 07:23:18 UTC
2020-11-13 07:34:58.321 UTC [50] LOG: система баз данных готова к принятию подключений
I, [2020-11-13T07:35:03.209924 #1] INFO -- :
> su postgres -c 'createdb discourse' || true
2020-11-13 07:35:03.575 UTC [63] postgres@postgres ERROR: база данных "discourse" уже существует
2020-11-13 07:35:03.575 UTC [63] postgres@postgres STATEMENT: CREATE DATABASE discourse;
createdb: ошибка: создание базы данных не удалось: ERROR: база данных "discourse" уже существует
I, [2020-11-13T07:35:03.578465 #1] INFO -- :
> su postgres -c 'psql discourse -c "create user discourse;"' || true
2020-11-13 07:35:03.644 UTC [74] postgres@discourse ERROR: роль "discourse" уже существует
2020-11-13 07:35:03.644 UTC [74] postgres@discourse STATEMENT: create user discourse;
ERROR: роль "discourse" уже существует
I, [2020-11-13T07:35:03.646897 #1] INFO -- :
> su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
I, [2020-11-13T07:35:03.711432 #1] INFO -- : GRANT
I, [2020-11-13T07:35:03.712171 #1] INFO -- :
> su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
I, [2020-11-13T07:35:03.782199 #1] INFO -- : ALTER SCHEMA
I, [2020-11-13T07:35:03.782901 #1] INFO -- :
> su postgres -c 'psql template1 -c "create extension if not exists hstore;"'
NOTICE: расширение "hstore" уже существует, пропускаем
I, [2020-11-13T07:35:03.847761 #1] INFO -- : CREATE EXTENSION
I, [2020-11-13T07:35:03.848327 #1] INFO -- :
> su postgres -c 'psql template1 -c "create extension if not exists pg_trgm;"'
NOTICE: расширение "pg_trgm" уже существует, пропускаем
I, [2020-11-13T07:35:03.909805 #1] INFO -- : CREATE EXTENSION
I, [2020-11-13T07:35:03.910376 #1] INFO -- :
> su postgres -c 'psql discourse -c "create extension if not exists hstore;"'
NOTICE: расширение "hstore" уже существует, пропускаем
I, [2020-11-13T07:35:03.972494 #1] INFO -- : CREATE EXTENSION
I, [2020-11-13T07:35:03.973165 #1] INFO -- :
> su postgres -c 'psql discourse -c "create extension if not exists pg_trgm;"'
NOTICE: расширение "pg_trgm" уже существует, пропускаем
I, [2020-11-13T07:35:04.035738 #1] INFO -- : CREATE EXTENSION
I, [2020-11-13T07:35:04.036418 #1] INFO -- :
> sudo -u postgres psql discourse
I, [2020-11-13T07:35:04.055691 #1] INFO -- : update pg_database set encoding = pg_char_to_encoding('UTF8') where datname = 'discourse' AND encoding = pg_char_to_encoding('SQL_ASCII');
I, [2020-11-13T07:35:04.147941 #1] INFO -- : File > /var/lib/postgresql/take-database-backup chmod: +x chown: postgres:postgres
I, [2020-11-13T07:35:04.150956 #1] INFO -- : File > /var/spool/cron/crontabs/postgres chmod: chown:
I, [2020-11-13T07:35:04.151502 #1] INFO -- :
> echo postgres установлен!
I, [2020-11-13T07:35:04.167002 #1] INFO -- : postgres установлен!
I, [2020-11-13T07:35:04.172330 #1] INFO -- : File > /etc/service/redis/run chmod: +x chown:
I, [2020-11-13T07:35:04.176723 #1] INFO -- : File > /etc/service/redis/log/run chmod: +x chown:
I, [2020-11-13T07:35:04.181121 #1] INFO -- : File > /etc/runit/3.d/10-redis chmod: +x chown:
I, [2020-11-13T07:35:04.182910 #1] INFO -- : Замена daemonize yes на пустое значение в /etc/redis/redis.conf
I, [2020-11-13T07:35:04.183837 #1] INFO -- : Замена (?-mix:^pidfile.*$) на пустое значение в /etc/redis/redis.conf
I, [2020-11-13T07:35:04.185609 #1] INFO -- :
> install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2020-11-13T07:35:04.225330 #1] INFO -- :
> Замена (?-mix:^logfile.*$) на logfile "" в /etc/redis/redis.conf
I, [2020-11-13T07:35:04.227109 #1] INFO -- : Замена (?-mix:^bind .*$) на пустое значение в /etc/redis/redis.conf
I, [2020-11-13T07:35:04.229259 #1] INFO -- : Замена (?-mix:^dir .*$) на dir /shared/redis_data в /etc/redis/redis.conf
I, [2020-11-13T07:35:04.230796 #1] INFO -- : Замена (?-mix:^protected-mode yes) на protected-mode no в /etc/redis/redis.conf
I, [2020-11-13T07:35:04.232306 #1] INFO -- : Замена # io-threads 4 на io-threads $redis_io_threads в /etc/redis/redis.conf
I, [2020-11-13T07:35:04.233981 #1] INFO -- :
> echo redis установлен
I, [2020-11-13T07:35:04.236684 #1] INFO -- : redis установлен
I, [2020-11-13T07:35:04.237270 #1] INFO -- :
> cat /etc/redis/redis.conf | grep logfile
I, [2020-11-13T07:35:04.263966 #1] INFO -- : logfile ""
I, [2020-11-13T07:35:04.264740 #1] INFO -- :
> exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2020-11-13T07:35:04.266909 #1] INFO -- :
> sleep 10
167:C 13 Nov 2020 07:35:04.374 # oO0OoO0OoO0Oo Redis запускается oO0OoO0OoO0Oo
167:C 13 Nov 2020 07:35:04.375 # Версия Redis=5.0.9, бит=64, commit=00000000, modified=0, pid=167, только что запущен
167:C 13 Nov 2020 07:35:04.375 # Конфигурация загружена
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 5.0.9 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Запущен в автономном режиме
|`-._`-...-` __...-.``-._|'` _.-'| Порт: 6379
| `-._ `._ / _.-' | PID: 167
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
167:M 13 Nov 2020 07:35:04.379 # WARNING: Настройка TCP backlog 511 не может быть применена, так как /proc/sys/net/core/somaxconn установлено в меньшее значение 128.
167:M 13 Nov 2020 07:35:04.379 # Сервер инициализирован
167:M 13 Nov 2020 07:35:04.379 # WARNING: В вашем ядре включена поддержка Transparent Huge Pages (THP). Это создаст проблемы с задержками и использованием памяти в Redis. Чтобы исправить это, выполните команду 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' от имени root и добавьте её в /etc/rc.local, чтобы сохранить настройку после перезагрузки. Redis необходимо перезапустить после отключения THP.
167:M 13 Nov 2020 07:35:04.498 * База данных загружена с диска: 0.118 секунд
167:M 13 Nov 2020 07:35:04.498 * Готов к принятию подключений
I, [2020-11-13T07:35:14.270726 #1] INFO -- :
I, [2020-11-13T07:35:14.271660 #1] INFO -- : Завершение асинхронных процессов
I, [2020-11-13T07:35:14.271971 #1] INFO -- : Отправка INT процессу HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/12/bin/postmaster -D /etc/postgresql/12/main pid: 50
I, [2020-11-13T07:35:14.272236 #1] INFO -- : Отправка TERM процессу exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 167
2020-11-13 07:35:14.272 UTC [50] LOG: получен запрос на быстрое завершение работы
167:signal-handler (1605252914) Получен SIGTERM, планирование завершения работы...
2020-11-13 07:35:14.276 UTC [50] LOG: прерывание любых активных транзакций
2020-11-13 07:35:14.278 UTC [50] LOG: фоновый рабочий "logical replication launcher" (PID 59) завершился с кодом выхода 1
2020-11-13 07:35:14.283 UTC [54] LOG: завершение работы
2020-11-13 07:35:14.312 UTC [50] LOG: система баз данных завершена
167:M 13 Nov 2020 07:35:14.331 # Пользователь запросил завершение работы...
167:M 13 Nov 2020 07:35:14.331 * Сохранение финального снимка RDB перед выходом.
167:M 13 Nov 2020 07:35:14.369 * База данных сохранена на диск
167:M 13 Nov 2020 07:35:14.370 # Redis теперь готов к выходу, пока...
FAILED
--------------------
Errno::ENOENT: Нет такого файла или каталога @ rb_sysopen - /usr/local/etc/ImageMagick-6/policy.xml
Место ошибки: /pups/lib/pups/replace_command.rb:8:in `read'
replace failed с параметрами {"filename"=>"/usr/local/etc/ImageMagick-6/policy.xml", "from"=>"<policymap>", "to"=>"<policymap>\n <policy domain=\"coder\" rights=\"none\" pattern=\"EPHEMERAL\" />\n <policy domain=\"coder\" rights=\"none\" pattern=\"URL\" />\n <policy domain=\"coder\" rights=\"none\" pattern=\"HTTPS\" />\n <policy domain=\"coder\" rights=\"none\" pattern=\"MVG\" />\n <policy domain=\"coder\" rights=\"none\" pattern=\"MSL\" />\n <policy domain=\"coder\" rights=\"none\" pattern=\"TEXT\" />\n <policy domain=\"coder\" rights=\"none\" pattern=\"SHOW\" />\n <policy domain=\"coder\" rights=\"none\" pattern=\"WIN\" />\n <policy domain=\"coder\" rights=\"none\" pattern=\"PLT\" />\n"}
8a2b7a84ea2ce73e8438d1a8ba1209227b633c0797880d18ca3b5e49d60f1007
** НЕ УДАЛОСЬ ЗАПУСТИТЬ ** пожалуйста, прокрутите вверх и поищите сообщения об ошибках, их может быть несколько.
./discourse-doctor может помочь диагностировать проблему.