فشل إعادة البناء: "extconf فشل، رمز الخروج 1" -- بسبب Docker قديم؟

لديّ عملية إعادة بناء فشلت، وأعتقد أن السبب هو هذا. النظام يعمل على Ubuntu 16.04 مع Docker version 17.05.0-ce, build 89658be، وأعلم أن هذا مشكوك فيه، لكنني أردت منح هذه الشخص فرصة أخرى لإعادة البناء إذا أمكن.

I, [2023-12-06T16:10:12.656984 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle install --retry 3 --jobs 4'
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

current directory:
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rbtrace-0.5.0/ext
/usr/local/bin/ruby extconf.rb
  -- tar zxvfo msgpack-1.1.0.tar.gz
  -- env CFLAGS=nil LDFLAGS=nil CC=nil
-- ./configure --disable-dependency-tracking --disable-shared --with-pic
--prefix=/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rbtrace-0.5.0/ext/dst/
--libdir=/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rbtrace-0.5.0/ext/dst/lib
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=/usr/local/bin/$(RUBY_BASE_NAME)
extconf.rb:6:in `sys': ./configure --disable-dependency-tracking
--disable-shared --with-pic
--prefix=/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rbtrace-0.5.0/ext/dst/
--libdir=/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rbtrace-0.5.0/ext/dst/lib
failed, please report to https://github.com/tmm1/rbtrace/issues (RuntimeError)
        from extconf.rb:42:in `block (2 levels) in <main>'
        من extconf.rb:34:in `chdir'
        من extconf.rb:34:in `block in <main>'
        من extconf.rb:30:in `chdir'
        من extconf.rb:30:in `<main>'

للحصول على سبب فشل تجميع هذا الامتداد، يرجى التحقق من ملف mkmf.log الذي يمكن
إيجاده هنا:

/var/www/discourse/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/rbtrace-0.5.0/mkmf.log

فشل extconf، رمز الخروج 1

root@www:/var/discourse# ./launcher rebuild app
تحذير: إصدار Docker 17.05.0-ce أصبح قديماً، يُنصح بالترقية إلى 17.06.2 أو أحدث.
تم اكتشاف معمارية x86_64.
تحذير: ملف containers/app.yml قابل للقراءة من قبل الجميع. يمكنك تأمين هذا الملف عن طريق تشغيل: chmod o-rwx containers/app.yml
ضمان أن launcher محدّث
جلب origin
launcher محدّث
إيقاف الحاوية القديمة
+ /usr/bin/docker stop -t 600 app
app
2.0.20231023-1945: جاري السحب من discourse/base
البصمة: sha256:2b0eb484d20888cc2daadb690dcfa73522105650c1420212e99345a36a424d77
الحالة: الصورة محدّثة لـ discourse/base:2.0.20231023-1945
/usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2023-12-06T16:07:07.394158 #1]  INFO -- : القراءة من stdin
I, [2023-12-06T16:07:07.401986 #1]  INFO -- : > locale-gen $LANG && update-locale
I, [2023-12-06T16:07:07.472801 #1]  INFO -- : جاري إنشاء اللغات (قد يستغرق هذا بعض الوقت)...
اكتمل الإنشاء.

I, [2023-12-06T16:07:07.473766 #1]  INFO -- : > mkdir -p /shared/postgres_run
I, [2023-12-06T16:07:07.483448 #1]  INFO -- :
I, [2023-12-06T16:07:07.485286 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2023-12-06T16:07:07.492124 #1]  INFO -- :
I, [2023-12-06T16:07:07.493335 #1]  INFO -- : > chmod 775 /shared/postgres_run
I, [2023-12-06T16:07:07.499353 #1]  INFO -- :
I, [2023-12-06T16:07:07.500588 #1]  INFO -- : > rm -fr /var/run/postgresql
I, [2023-12-06T16:07:07.507193 #1]  INFO -- :
I, [2023-12-06T16:07:07.508374 #1]  INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2023-12-06T16:07:07.514723 #1]  INFO -- :
I, [2023-12-06T16:07:07.516000 #1]  INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres يعمل بالفعل، إيقاف الحاوية ; exit 1
2023/12/06 16:07:07 socat[17] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): لا يوجد مثل هذا الملف أو الدليل
I, [2023-12-06T16:07:07.543544 #1]  INFO -- :
I, [2023-12-06T16:07:07.544355 #1]  INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2023-12-06T16:07:07.549264 #1]  INFO -- :
I, [2023-12-06T16:07:07.549978 #1]  INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2023-12-06T16:07:07.554670 #1]  INFO -- :
I, [2023-12-06T16:07:07.555334 #1]  INFO -- : > mkdir -p /shared/postgres_run/13-main.pg_stat_tmp
I, [2023-12-06T16:07:07.559798 #1]  INFO -- :
I, [2023-12-06T16:07:07.560895 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run/13-main.pg_stat_tmp
I, [2023-12-06T16:07:07.565444 #1]  INFO -- :
I, [2023-12-06T16:07:07.575177 #1]  INFO -- : ملف > /etc/service/postgres/run  chmod: +x  chown:
I, [2023-12-06T16:07:07.583472 #1]  INFO -- : ملف > /etc/service/postgres/log/run  chmod: +x  chown:
I, [2023-12-06T16:07:07.593556 #1]  INFO -- : ملف > /etc/runit/3.d/99-postgres  chmod: +x  chown:
I, [2023-12-06T16:07:07.602131 #1]  INFO -- : ملف > /root/upgrade_postgres  chmod: +x  chown:
I, [2023-12-06T16:07:07.603040 #1]  INFO -- : > chown -R root /var/lib/postgresql/13/main
I, [2023-12-06T16:07:08.001408 #1]  INFO -- :
I, [2023-12-06T16:07:08.002703 #1]  INFO -- : > [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/
13/bin/initdb -D /shared/postgres_data || exit 0
I, [2023-12-06T16:07:08.006516 #1]  INFO -- :
I, [2023-12-06T16:07:08.007156 #1]  INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2023-12-06T16:07:08.048363 #1]  INFO -- :
I, [2023-12-06T16:07:08.049524 #1]  INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2023-12-06T16:07:08.055285 #1]  INFO -- :
I, [2023-12-06T16:07:08.056635 #1]  INFO -- : > /root/upgrade_postgres
I, [2023-12-06T16:07:08.067823 #1]  INFO -- :
I, [2023-12-06T16:07:08.068692 #1]  INFO -- : > rm /root/upgrade_postgres
I, [2023-12-06T16:07:08.074460 #1]  INFO -- :
I, [2023-12-06T16:07:08.077226 #1]  INFO -- : استبدال data_directory = '/var/lib/postgresql/13/main' بـ data_directory = '/shared/postgres_data' في /etc/postgresql/13/main/postgresql.con
f
I, [2023-12-06T16:07:08.078863 #1]  INFO -- : استبدال (?-mix:#?listen_addresses *=.*) بـ listen_addresses = '*' في /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T16:07:08.080089 #1]  INFO -- : استبدال (?-mix:#?synchronous_commit *=.*) بـ synchronous_commit = $db_synchronous_commit في /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T16:07:08.081228 #1]  INFO -- : استبدال (?-mix:#?shared_buffers *=.*) بـ shared_buffers = $db_shared_buffers في /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T16:07:08.082315 #1]  INFO -- : استبدال (?-mix:#?work_mem *=.*) بـ work_mem = $db_work_mem في /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T16:07:08.083334 #1]  INFO -- : استبدال (?-mix:#?default_text_search_config *=.*) بـ default_text_search_config = '$db_default_text_search_config' في /etc/postgresql/13/mai
n/postgresql.conf
I, [2023-12-06T16:07:08.084197 #1]  INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2023-12-06T16:07:08.093130 #1]  INFO -- :
I, [2023-12-06T16:07:08.094813 #1]  INFO -- : استبدال (?-mix:#?checkpoint_segments *=.*) بـ checkpoint_segments = $db_checkpoint_segments في /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T16:07:08.095967 #1]  INFO -- : استبدال (?-mix:#?logging_collector *=.*) بـ logging_collector = $db_logging_collector في /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T16:07:08.097082 #1]  INFO -- : استبدال (?-mix:#?log_min_duration_statement *=.*) بـ log_min_duration_statement = $db_log_min_duration_statement في /etc/postgresql/13/main/
postgresql.conf
I, [2023-12-06T16:07:08.098475 #1]  INFO -- : استبدال (?-mix:^#local +replication +postgres +peer$) بـ local replication postgres  peer في /etc/postgresql/13/main/pg_hba.conf
I, [2023-12-06T16:07:08.099453 #1]  INFO -- : استبدال (?-mix:^host.*all.*all.*127.*$) بـ host all all 0.0.0.0/0 md5 في /etc/postgresql/13/main/pg_hba.conf
I, [2023-12-06T16:07:08.100346 #1]  INFO -- : استبدال (?-mix:^host.*all.*all.*::1\/128.*$) بـ host all all ::/0 md5 في /etc/postgresql/13/main/pg_hba.conf
I, [2023-12-06T16:07:08.101225 #1]  INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postm
aster -D /etc/postgresql/13/main
I, [2023-12-06T16:07:08.105497 #1]  INFO -- : > sleep 5
2023-12-06 16:07:08.222 UTC [40] LOG:  بدء تشغيل PostgreSQL 13.12 (Debian 13.12-1.pgdg110+1) على x86_64-pc-linux-gnu، تم التجميع بواسطة gcc (Debian 10.2.1-6) 10.2.1 20210110، 64-بت
2023-12-06 16:07:08.223 UTC [40] LOG:  الاستماع على عنوان IPv4 "0.0.0.0"، المنفذ 5432
2023-12-06 16:07:08.224 UTC [40] LOG:  الاستماع على عنوان IPv6 "::"، المنفذ 5432
2023-12-06 16:07:08.228 UTC [40] LOG:  الاستماع على مقبس Unix "/var/run/postgresql/.s.PGSQL.5432"
2023-12-06 16:07:08.236 UTC [43] LOG:  تم إيقاف نظام قاعدة البيانات في 2023-12-06 16:06:59 UTC
2023-12-06 16:07:08.249 UTC [40] LOG:  نظام قاعدة البيانات جاهز لاستقبال الاتصالات
I, [2023-12-06T16:07:13.114589 #1]  INFO -- :
I, [2023-12-06T16:07:13.114892 #1]  INFO -- : > su postgres -c 'createdb discourse' || true
2023-12-06 16:07:13.233 UTC [53] postgres@postgres ERROR:  قاعدة البيانات "discourse" موجودة بالفعل
2023-12-06 16:07:13.233 UTC [53] postgres@postgres STATEMENT:  CREATE DATABASE discourse;
createdb: خطأ: فشل إنشاء قاعدة البيانات: ERROR:  قاعدة البيانات "discourse" موجودة بالفعل
I, [2023-12-06T16:07:13.238163 #1]  INFO -- :
I, [2023-12-06T16:07:13.239077 #1]  INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
2023-12-06 16:07:13.337 UTC [57] postgres@discourse ERROR:  الدور "discourse" موجود بالفعل
2023-12-06 16:07:13.337 UTC [57] postgres@discourse STATEMENT:  create user discourse;
ERROR:  الدور "discourse" موجود بالفعل
I, [2023-12-06T16:07:13.341906 #1]  INFO -- :
I, [2023-12-06T16:07:13.342832 #1]  INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
I, [2023-12-06T16:07:13.414866 #1]  INFO -- : GRANT

I, [2023-12-06T16:07:13.415706 #1]  INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
I, [2023-12-06T16:07:13.488051 #1]  INFO -- : ALTER SCHEMA

I, [2023-12-06T16:07:13.488985 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists hstore;"'
NOTICE:  الامتداد "hstore" موجود بالفعل، تخطي
I, [2023-12-06T16:07:13.565797 #1]  INFO -- : CREATE EXTENSION

I, [2023-12-06T16:07:13.566695 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists pg_trgm;"'
NOTICE:  الامتداد "pg_trgm" موجود بالفعل، تخطي
I, [2023-12-06T16:07:13.631827 #1]  INFO -- : CREATE EXTENSION

I, [2023-12-06T16:07:13.632670 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists vector;"'
NOTICE:  الامتداد "vector" موجود بالفعل، تخطي
I, [2023-12-06T16:07:13.699897 #1]  INFO -- : CREATE EXTENSION

I, [2023-12-06T16:07:13.700680 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists hstore;"'
NOTICE:  الامتداد "hstore" موجود بالفعل، تخطي
I, [2023-12-06T16:07:13.766672 #1]  INFO -- : CREATE EXTENSION

I, [2023-12-06T16:07:13.767617 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists pg_trgm;"'
NOTICE:  الامتداد "pg_trgm" موجود بالفعل، تخطي
I, [2023-12-06T16:07:13.836190 #1]  INFO -- : CREATE EXTENSION

I, [2023-12-06T16:07:13.837081 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists vector;"'
NOTICE:  الامتداد "vector" موجود بالفعل، تخطي
I, [2023-12-06T16:07:13.904254 #1]  INFO -- : CREATE EXTENSION

I, [2023-12-06T16:07:13.905131 #1]  INFO -- : > sudo -u postgres psql discourse
I, [2023-12-06T16:07:13.911512 #1]  INFO -- : update pg_database set encoding = pg_char_to_encoding('UTF8') where datname = 'discourse' AND encoding = pg_char_to_encoding('SQL_ASCII');

I, [2023-12-06T16:07:14.017559 #1]  INFO -- : ملف > /var/lib/postgresql/take-database-backup  chmod: +x  chown: postgres:postgres
I, [2023-12-06T16:07:14.025808 #1]  INFO -- : ملف > /var/spool/cron/crontabs/postgres  chmod:   chown:
I, [2023-12-06T16:07:14.026677 #1]  INFO -- : > echo تم تثبيت postgres!
I, [2023-12-06T16:07:14.031148 #1]  INFO -- : تم تثبيت postgres!

I, [2023-12-06T16:07:14.039613 #1]  INFO -- : ملف > /etc/service/redis/run  chmod: +x  chown:
I, [2023-12-06T16:07:14.047348 #1]  INFO -- : ملف > /etc/service/redis/log/run  chmod: +x  chown:
I, [2023-12-06T16:07:14.054663 #1]  INFO -- : ملف > /etc/runit/3.d/10-redis  chmod: +x  chown:
I, [2023-12-06T16:07:14.056288 #1]  INFO -- : استبدال daemonize yes بـ  في /etc/redis/redis.conf
I, [2023-12-06T16:07:14.058359 #1]  INFO -- : استبدال (?-mix:^pidfile.*$) بـ  في /etc/redis/redis.conf
I, [2023-12-06T16:07:14.059363 #1]  INFO -- : > install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2023-12-06T16:07:14.063988 #1]  INFO -- :
I, [2023-12-06T16:07:14.065261 #1]  INFO -- : استبدال (?-mix:^logfile.*$) بـ logfile "" في /etc/redis/redis.conf
I, [2023-12-06T16:07:14.066441 #1]  INFO -- : استبدال (?-mix:^bind .*$) بـ  في /etc/redis/redis.conf
I, [2023-12-06T16:07:14.068176 #1]  INFO -- : استبدال (?-mix:^dir .*$) بـ dir /shared/redis_data في /etc/redis/redis.conf
I, [2023-12-06T16:07:14.069623 #1]  INFO -- : استبدال (?-mix:^protected-mode yes) بـ protected-mode no في /etc/redis/redis.conf
I, [2023-12-06T16:07:14.072095 #1]  INFO -- : استبدال # io-threads 4 بـ io-threads $redis_io_threads في /etc/redis/redis.conf
I, [2023-12-06T16:07:14.073689 #1]  INFO -- : > echo تم تثبيت redis
I, [2023-12-06T16:07:14.079558 #1]  INFO -- : تم تثبيت redis

I, [2023-12-06T16:07:14.080851 #1]  INFO -- : > cat /etc/redis/redis.conf | grep logfile
I, [2023-12-06T16:07:14.092037 #1]  INFO -- : logfile ""

I, [2023-12-06T16:07:14.092862 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2023-12-06T16:07:14.095644 #1]  INFO -- : > sleep 10
109:C 06 Dec 2023 16:07:14.118 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
109:C 06 Dec 2023 16:07:14.119 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=109, just started
109:C 06 Dec 2023 16:07:14.119 # Configuration loaded
109:M 06 Dec 2023 16:07:14.120 * monotonic clock: POSIX clock_gettime
109:M 06 Dec 2023 16:07:14.123 * Running mode=standalone, port=6379.
109:M 06 Dec 2023 16:07:14.123 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
109:M 06 Dec 2023 16:07:14.123 # Server initialized
109:M 06 Dec 2023 16:07:14.124 * Loading RDB produced by version 7.0.7
109:M 06 Dec 2023 16:07:14.125 * RDB age 17 seconds
109:M 06 Dec 2023 16:07:14.125 * RDB memory usage when created 16.66 Mb
109:M 06 Dec 2023 16:07:14.212 * Done loading RDB, keys loaded: 24735, keys expired: 2.
109:M 06 Dec 2023 16:07:14.212 * DB loaded from disk: 0.088 seconds
109:M 06 Dec 2023 16:07:14.212 * Ready to accept connections
I, [2023-12-06T16:07:24.102624 #1]  INFO -- :
I, [2023-12-06T16:07:24.103423 #1]  INFO -- : > thpoff echo "thpoff is installed!"
I, [2023-12-06T16:07:24.111028 #1]  INFO -- : thpoff is installed!

I, [2023-12-06T16:07:24.111792 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_SMTP_ADDRESS"] == "smtp.example.com"; puts "Aborting! Mail is not configured!"; exit 1; end'
I, [2023-12-06T16:07:24.220317 #1]  INFO -- :
I, [2023-12-06T16:07:24.221265 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_HOSTNAME"] == "discourse.example.com"; puts "Aborting! Domain is not configured!"; exit 1; end'
I, [2023-12-06T16:07:24.335260 #1]  INFO -- :
I, [2023-12-06T16:07:24.336566 #1]  INFO -- : > /usr/local/bin/ruby -e 'if (ENV["DISCOURSE_CDN_URL"] || "")[0..1] == "//"; puts "Aborting! CDN must have a protocol specified. Once fixed you
should rebake your posts now to correct all posts."; exit 1; end'
I, [2023-12-06T16:07:24.447936 #1]  INFO -- :
I, [2023-12-06T16:07:24.448990 #1]  INFO -- : > rm -f /etc/cron.d/anacron
I, [2023-12-06T16:07:24.456613 #1]  INFO -- :
I, [2023-12-06T16:07:24.462541 #1]  INFO -- : ملف > /etc/cron.d/anacron  chmod:   chown:
I, [2023-12-06T16:07:24.472173 #1]  INFO -- : ملف > /etc/runit/1.d/copy-env  chmod: +x  chown:
I, [2023-12-06T16:07:24.483793 #1]  INFO -- : ملف > /etc/service/unicorn/run  chmod: +x  chown:
I, [2023-12-06T16:07:24.493548 #1]  INFO -- : ملف > /etc/service/nginx/run  chmod: +x  chown:
I, [2023-12-06T16:07:24.503794 #1]  INFO -- : ملف > /etc/runit/3.d/01-nginx  chmod: +x  chown:
I, [2023-12-06T16:07:24.511755 #1]  INFO -- : ملف > /etc/runit/3.d/02-unicorn  chmod: +x  chown:
I, [2023-12-06T16:07:24.512437 #1]  INFO -- : استبدال # postgres بـ sv start postgres || exit 1 في /etc/service/unicorn/run
I, [2023-12-06T16:07:24.513223 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2023-12-06T16:07:24.517456 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git reset --hard
137:C 06 Dec 2023 16:07:24.534 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
137:C 06 Dec 2023 16:07:24.534 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=137, just started
137:C 06 Dec 2023 16:07:24.534 # Configuration loaded
137:M 06 Dec 2023 16:07:24.535 * monotonic clock: POSIX clock_gettime
137:M 06 Dec 2023 16:07:24.536 # Warning: Could not create server TCP listening socket *:6379: bind: Address already in use
137:M 06 Dec 2023 16:07:24.536 # Failed listening on port 6379 (TCP), aborting.
Updating files: 100% (33858/33858), done.
I, [2023-12-06T16:07:29.876110 #1]  INFO -- : HEAD is now at 043b4a418 FIX: replaces data-tooltip usage by <DTooltip /> (#24062)

I, [2023-12-06T16:07:29.876964 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git clean -f
I, [2023-12-06T16:07:30.100602 #1]  INFO -- :
I, [2023-12-06T16:07:30.101495 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
  set -o errexit
  if [ $(git rev-parse --is-shallow-repository) == "true" ]; then
      git remote set-branches --add origin main
      git remote set-branches origin tests-passed
      git fetch --depth 1 origin tests-passed
  else
      git fetch --tags --prune-tags --prune --force origin
  fi
'
From https://github.com/discourse/discourse
 - [deleted]             (none)     -> origin/0-flake-key
 - [deleted]             (none)     -> origin/0-obscuring
 - [deleted]             (none)     -> origin/0-router-lint
 - [deleted]             (none)     -> origin/0-router-service
 - [deleted]             (none)     -> origin/autoimport-cleanup
 - [deleted]             (none)     -> origin/category-bullet-only
 - [deleted]             (none)     -> origin/dependabot/bundler/syntax_tree-6.2.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.4.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.8.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.6.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.5.2
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.4.2
 - [deleted]             (none)     -> origin/dev-upgrade-reject-reason-reviewable-modal
 - [deleted]             (none)     -> origin/dev/ability-to-collect-stats-without-public-exposing
 - [deleted]             (none)     -> origin/dev/minio-s3-system-specs
 - [deleted]             (none)     -> origin/dev/re-enable-minio-specs
 - [deleted]             (none)     -> origin/dev/switch-over-category-settings
 - [deleted]             (none)     -> origin/dev/switch-over-more-category-settings
 - [deleted]             (none)     -> origin/discovery-named-outlets
 - [deleted]             (none)     -> origin/feature/theme-settings-migration
 - [deleted]             (none)     -> origin/fix/account-for-empty-string-site-settings
 - [deleted]             (none)     -> origin/footnote-plugin
 - [deleted]             (none)     -> origin/metadata-update
 - [deleted]             (none)     -> origin/modal-ux
 - [deleted]             (none)     -> origin/neil-2
 - [deleted]             (none)     -> origin/perf_cache_async_search
 - [deleted]             (none)     -> origin/spoiler-plugin
 - [deleted]             (none)     -> origin/support-search-customizationz
   043b4a418..22bb1c895  main                   -> origin/main
 * [new branch]          0-lint-suffix          -> origin/0-lint-suffix
 * [new branch]          0-rubocop              -> origin/0-rubocop
 * [new branch]          add-custom-emoji-sanitization-clean -> origin/add-custom-emoji-sanitization-clean
 * [new branch]          add-ds-store-to-gitignore -> origin/add-ds-store-to-gitignore
 + 64520a075...ff17131c9 add-new-chat-indicator-preference-only-mentions -> origin/add-new-chat-indicator-preference-only-mentions  (forced update)
 * [new branch]          api-topic-title-decorator -> origin/api-topic-title-decorator
 * [new branch]          array-custom-field-fix -> origin/array-custom-field-fix
 * [new branch]          array-custom-field-order -> origin/array-custom-field-order
 * [new branch]          avatar-notifications   -> origin/avatar-notifications
 * [new branch]          boosted-searches       -> origin/boosted-searches
 * [new branch]          category_definition    -> origin/category_definition
 * [new branch]          chat-github-onebox     -> origin/chat-github-onebox
 * [new branch]          chat-reaction-emoji-alignment -> origin/chat-reaction-emoji-alignment
 * [new branch]          chat/direct-messages   -> origin/chat/direct-messages
 * [new branch]          custom-field-store-cleanup -> origin/custom-field-store-cleanup
 * [new branch]          delete-backups-based-on-time-window -> origin/delete-backups-based-on-time-window
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.5.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.5.0
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.9.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.9.0
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.7.1 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.7.1
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.6.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.6.0
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.5.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.5.0
 * [new branch]          desktop-notification-handlers -> origin/desktop-notification-handlers
 * [new branch]          dev/add-a-reference-column-to-notifications -> origin/dev/add-a-reference-column-to-notifications
 + ee95e6359...346f9d1cd dev/add-new-chat-metrics -> origin/dev/add-new-chat-metrics  (forced update)
 * [new branch]          dev/dry-up-user-status-serializers -> origin/dev/dry-up-user-status-serializers
 * [new branch]          dev/flaky-chat-details-collapser-spec -> origin/dev/flaky-chat-details-collapser-spec
 * [new branch]          dev/no-need-to-include-user-status-twice -> origin/dev/no-need-to-include-user-status-twice
 * [new branch]          dev/rethink-mass-mentions -> origin/dev/rethink-mass-mentions
 * [new branch]          dev/rethink-mass-mentions-polymorphic -> origin/dev/rethink-mass-mentions-polymorphic
 * [new branch]          dev/revert-guardian-devex -> origin/dev/revert-guardian-devex
 * [new branch]          dev/use-system-user-id-const -> origin/dev/use-system-user-id-const
 + 54940ca5c...1f44361c2 dev_paginate_categories_json -> origin/dev_paginate_categories_json  (forced update)
 * [new branch]          dev_watched_words      -> origin/dev_watched_words
 + 46fe4511f...a9d0e7069 ember-4                -> origin/ember-4  (forced update)
 * [new branch]          ember-5-plugins        -> origin/ember-5-plugins
 * [new branch]          extract_stripper       -> origin/extract_stripper
 * [new branch]          feature/add-copy-share-link-post-functionality -> origin/feature/add-copy-share-link-post-functionality
   9a6c6fd5b..8780daeee  feature/bookmark-menu-and-modal-redesign -> origin/feature/bookmark-menu-and-modal-redesign
 * [new branch]          feature/migrations-schema-generator -> origin/feature/migrations-schema-generator
 * [new branch]          feature_watched_words_validation -> origin/feature_watched_words_validation
 * [new branch]          file-size-restriction  -> origin/file-size-restriction
   43df37774..4393dd37e  filtered-events        -> origin/filtered-events
 * [new branch]          fix-keyboard-shortcuts-modal-double-scrollbar -> origin/fix-keyboard-shortcuts-modal-double-scrollbar
 * [new branch]          fix/count-mass-mentions-correctly -> origin/fix/count-mass-mentions-correctly
 * [new branch]          fix_category_select_kits -> origin/fix_category_select_kits
 * [new branch]          full-page              -> origin/full-page
   ce7fb6906..a6227532d  generic-import-latest  -> origin/generic-import-latest
 * [new branch]          generic-import-latest-snowflake -> origin/generic-import-latest-snowflake
 * [new branch]          generic-import-update  -> origin/generic-import-update
 * [new branch]          image-assets           -> origin/image-assets
 * [new branch]          independent-theme-compiler -> origin/independent-theme-compiler
 * [new branch]          input-text-field-component -> origin/input-text-field-component
 * [new branch]          issue/fix-guardian-init-basic-user -> origin/issue/fix-guardian-init-basic-user
 * [new branch]          keyword-site-setting   -> origin/keyword-site-setting
 + bdcc24f96...92e545292 list-wrapper           -> origin/list-wrapper  (forced update)
   e3636078c..5def32699  mock-chat-index-redesign -> origin/mock-chat-index-redesign
 * [new branch]          move_inflector         -> origin/move_inflector
 * [new branch]          oklab                  -> origin/oklab
 * [new branch]          poc/auto-after-before-plugin-outlets -> origin/poc/auto-after-before-plugin-outlets
 * [new branch]          poc/insert-before-after-wrapping-outlet -> origin/poc/insert-before-after-wrapping-outlet
 * [new branch]          pretty-text-please     -> origin/pretty-text-please
 * [new branch]          revert-maxmind         -> origin/revert-maxmind
   ef3f41543..223626d7a  stable                 -> origin/stable
 * [new branch]          support-load-more-btn  -> origin/support-load-more-btn
 * [new branch]          test-issue-temporary   -> origin/test-issue-temporary
   043b4a418..efcb5bb3d  tests-passed           -> origin/tests-passed
 * [new branch]          transform-hooks        -> origin/transform-hooks
 * [new branch]          transform-post-fn-api  -> origin/transform-post-fn-api
 * [new branch]          tweaks-2-fr            -> origin/tweaks-2-fr
 * [new branch]          use-sassc-embedded     -> origin/use-sassc-embedded
 * [new branch]          username_cache         -> origin/username_cache
 * [new branch]          ux-add-sorting-params-to-outlet -> origin/ux-add-sorting-params-to-outlet
 t [tag update]          beta                   -> beta
 t [tag update]          latest-release         -> latest-release
 * [new tag]             v3.1.3                 -> v3.1.3
 * [new tag]             v3.2.0.beta3           -> v3.2.0.beta3
I, [2023-12-06T16:07:31.685641 #1]  INFO -- :
I, [2023-12-06T16:07:31.686339 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
  set -o errexit
  if [[ $(git symbolic-ref --short HEAD) == tests-passed ]] ; then
      git pull
  else
      git -c advice.detachedHead=false checkout tests-passed
  fi
'
Switched to a new branch 'tests-passed'
I, [2023-12-06T16:07:35.620323 #1]  INFO -- : Branch 'tests-passed' set up to track remote branch 'tests-passed' from 'origin'.

I, [2023-12-06T16:07:35.620991 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git config user.discourse-version tests-passed
I, [2023-12-06T16:07:35.636731 #1]  INFO -- :
I, [2023-12-06T16:07:35.637527 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp
I, [2023-12-06T16:07:35.643552 #1]  INFO -- :
I, [2023-12-06T16:07:35.644234 #1]  INFO -- : > cd /var/www/discourse && chown discourse:www-data tmp
I, [2023-12-06T16:07:35.650138 #1]  INFO -- :
I, [2023-12-06T16:07:35.650972 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/pids
I, [2023-12-06T16:07:35.656320 #1]  INFO -- :
I, [2023-12-06T16:07:35.657036 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/sockets
I, [2023-12-06T16:07:35.662104 #1]  INFO -- :
I, [2023-12-06T16:07:35.662758 #1]  INFO -- : > cd /var/www/discourse && touch tmp/.gitkeep
I, [2023-12-06T16:07:35.669054 #1]  INFO -- :
I, [2023-12-06T16:07:35.669975 #1]  INFO -- : > cd /var/www/discourse && mkdir -p                    /shared/log/rails
I, [2023-12-06T16:07:35.676933 #1]  INFO -- :
I, [2023-12-06T16:07:35.677771 #1]  INFO -- : > cd /var/www/discourse && bash -c "touch -a           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.lo
g"
I, [2023-12-06T16:07:35.687445 #1]  INFO -- :
I, [2023-12-06T16:07:35.688203 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.lo
g /var/www/discourse/log"
I, [2023-12-06T16:07:35.697439 #1]  INFO -- :
I, [2023-12-06T16:07:35.698219 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/{uploads,backups}"
I, [2023-12-06T16:07:35.705472 #1]  INFO -- :
I, [2023-12-06T16:07:35.706224 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/{uploads,backups} /var/www/discourse/public"
I, [2023-12-06T16:07:35.714941 #1]  INFO -- :
I, [2023-12-06T16:07:35.715579 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/tmp/{backups,restores}"
I, [2023-12-06T16:07:35.722744 #1]  INFO -- :
I, [2023-12-06T16:07:35.723466 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/tmp/{backups,restores} /var/www/discourse/tmp"
I, [2023-12-06T16:07:35.730272 #1]  INFO -- :
I, [2023-12-06T16:07:35.730904 #1]  INFO -- : > cd /var/www/discourse && chown -R discourse:www-data /shared/log/rails /shared/uploads /shared/backups /shared/tmp
I, [2023-12-06T16:07:36.244295 #1]  INFO -- :
I, [2023-12-06T16:07:36.245006 #1]  INFO -- : > cd /var/www/discourse && [ ! -d public/plugins ] || find public/plugins/ -maxdepth 1 -xtype l -delete
I, [2023-12-06T16:07:36.248521 #1]  INFO -- :
I, [2023-12-06T16:07:36.249238 #1]  INFO -- : استبدال # redis بـ sv start redis || exit 1 في /etc/service/unicorn/run
I, [2023-12-06T16:07:36.249835 #1]  INFO -- : > cd /var/www/discourse/plugins && git clone https://github.com/discourse/docker_manager.git
Cloning into 'docker_manager'...
I, [2023-12-06T16:07:37.086735 #1]  INFO -- :
I, [2023-12-06T16:07:37.087632 #1]  INFO -- : > cp /var/www/discourse/config/nginx.sample.conf /etc/nginx/conf.d/discourse.conf
I, [2023-12-06T16:07:37.095997 #1]  INFO -- :
I, [2023-12-06T16:07:37.097169 #1]  INFO -- : > rm /etc/nginx/sites-enabled/default
I, [2023-12-06T16:07:37.102877 #1]  INFO -- :
I, [2023-12-06T16:07:37.103777 #1]  INFO -- : > mkdir -p /var/nginx/cache
I, [2023-12-06T16:07:37.109509 #1]  INFO -- :
I, [2023-12-06T16:07:37.110962 #1]  INFO -- : استبدال pid /run/nginx.pid; بـ daemon off; في /etc/nginx/nginx.conf
I, [2023-12-06T16:07:37.111761 #1]  INFO -- : استبدال (?m-ix:upstream[^\}]+\}) بـ upstream discourse { server 127.0.0.1:3000; } في /etc/nginx/conf.d/discourse.conf
I, [2023-12-06T16:07:37.112365 #1]  INFO -- : استبدال (?-mix:server_name.+$) بـ server_name _ ; في /etc/nginx/conf.d/discourse.conf
I, [2023-12-06T16:07:37.112934 #1]  INFO -- : استبدال (?-mix:client_max_body_size.+$) بـ client_max_body_size $upload_size ; في /etc/nginx/conf.d/discourse.conf
I, [2023-12-06T16:07:37.113518 #1]  INFO -- : استبدال (?-mix:worker_connections.+$) بـ worker_connections $nginx_worker_connections ; في /etc/nginx/nginx.conf
I, [2023-12-06T16:07:37.113925 #1]  INFO -- : > echo "done configuring web"
I, [2023-12-06T16:07:37.116639 #1]  INFO -- : done configuring web

حدث خطأ أثناء التحديث

```ruby
api_key = "a quick brown fox"
fetch("https://api.example.com/data", headers: { 'Authorization' => api_key })

يرجى مساعدتي في إصلاحه.

هل يمكنك نشر ملف السجل هذا؟

أعتقد أن هذا الملف موجود داخل الحاوية التي تفشل في البناء، لذلك سيكون من الصعب اكتشافه بعض الشيء، على ما أعتقد. أعتقد أنني رأيت شخصًا آخر لديه خطأ مماثل اختفى عندما قاموا بترقية Docker (كانوا على نظام تشغيل أحدث)، لذلك سأفترض أن هذه هي المشكلة.

شكرًا

ربما. ولكن على نظامي هناك مجموعة من مثل هذه - قد تستحق نظرة، في حال لم تكن مجرد أحافير.

ls -ltr /var/lib/docker/overlay2/*/*/var/www/discourse/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/rbtrace*/mkmf.log

حسناً. سأكون هناك.
انظر!

root@www:~# find /var/lib/docker -name mkmf.log|grep rbtrac|xargs ls -tl
-rw-r--r-- 1 1000 1000 35035 Oct 23 19:45 /var/lib/docker/aufs/diff/53a65982150d745a518e8e8b3d1c4e5e21df4aeaf387d952d9018f688e676391/var/www/discourse/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/rbtrace-0.4.14/mkmf.log
-rw-r--r-- 1 1000 1000 35329 Apr  9  2023 /var/lib/docker/aufs/diff/f324a4557c610412bd944c93adb2b1cb93a3e368bbd10b4f3a7b0160d320be6c/var/www/discourse/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/rbtrace-0.4.14/mkmf.log
-rw-r--r-- 1 1000 1000 35329 Apr  9  2023 /var/lib/docker/aufs/mnt/de948aa2097c3527c79c437dbfae65d2c71bdde2843896306868d409ae4b0937/var/www/discourse/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/rbtrace-0.4.14/mkmf.log
-rw-r--r-- 1 1000 1000 35147 Dec 21  2022 /var/lib/docker/aufs/diff/484330416e5a8c7cda4005d144c20205d5410d62dd23a599b4e9b2d408510c13/var/www/discourse/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/rbtrace-0.4.14/mkmf.log

يبدو أن شيئًا كهذا هو السبب:

have_func: checking for rb_gc_add_event_hook() in ruby.h,node.h... -------------------- no

LD_LIBRARY_PATH=.:/usr/local/lib "gcc -o conftest -I/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rbtrace-0.4.14/ext/dst/include -I/usr/local/include/ruby-3.2.0/x86_64-linux -I/usr/local/include/ruby-3.2.0/ruby/backward -I/usr/local/include/ruby-3.2.0 -I.    -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef  -fPIC conftest.c  -L. -L/usr/local/lib -Wl,-rpath,/usr/local/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed    -lmsgpackc_ext  -Wl,-rpath,/usr/local/lib -L/usr/local/lib -lruby -lmsgpackc_ext  -lm -lpthread  -lc"
conftest.c:4:10: fatal error: node.h: No such file or directory

وأيضاً

conftest.c: In function ‘t’:
conftest.c:16:57: error: ‘rb_postponed_job_register_one’ undeclared (first use in this function)
   16 | int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_postponed_job_register_one; return !p; }
      |                                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~

لا يبدو منطقياً أن يكون هذا بسبب إصدار قديم من دوكر. لكنني ما زلت أخشى كسر هذا الموقع دون سبب.
هنا هو رابط تنتهي صلاحيته خلال 12 ساعة.

قد يكون هذا مضللاً، حيث أرى نفس حالات الفشل ومع ذلك يبدو أنه لا شيء معطل في حالتي. ربما تكون هذه السجلات نوعًا من الأحفورة في الصورة؟

من المحتمل. على أي حال، لا أحد آخر لديه هذه المشكلة، لذا أعتقد أنني لن أقلق بشأنها وسأخبر هذا الشخص فقط أنه إذا أراد ترقية discourse فسيتعين عليه تحديث الجهاز الظاهري ونظام التشغيل.

شكرا لمساعدتك.

لقد جربت للتو إعادة بناء على تثبيت Docker قياسي (باستخدام Docker من Debian Bullseye، حزمة apt docker.io) ونجحت، لذا هذا يثبت على الأقل أن عمليات التثبيت المستضافة ذاتيًا ليست معطلة، أي أن launcher rebuild لا يؤدي بشكل متكرر إلى فشل عمليات التثبيت بسبب مشكلة تبعية rbtrace.

أشك في أن إصدار Docker عامل هنا؛ يفشل rbtrace في البناء داخل الحاوية، وهذا على الأرجح نتيجة لتبعيات مفقودة أو قديمة داخل الحاوية أيضًا.

هل هناك أي فرصة لفشل استنساخك لـ discourse_docker في git pull قبل بدء إعادة البناء، وبالتالي فهو على التزام قديم؟ لا يضر القيام بـ git pull يدويًا والتأكد من أنه على أحدث التزام للفرع main.

هذا احتمال. يقوم المشغل الحديث بسحب git (وقد مر وقت طويل منذ أن بدأ في سحب git). ربما سأمنحه محاولة أخرى.

إنه بالتأكيد حالة هامشية من نوع ما.

قد يساعد هذا شخصًا ما لأنه نجح معنا دون ترقية Ubuntu 16.

  1. قم بتشغيل الأمر sudo apt update && sudo apt upgrade
  2. ثم قم بتشغيل مشغل discourse ./launcher rebuild app

لقد اختفى الخطأ بالنسبة لنا.

لقد جربت إصلاحًا من منتدى آخر. في البرنامج النصي launcher، استبدلت:

image="discourse/base:2.0.20231218-0429"

بـ:

image="discourse/base:2.0.20231230-0022"

هذا يسحب صورة أحدث تحتوي على rbtrace-0.5.1، مما يجعلها تعمل.

حصلت عليها من هنا: Discourse Build Error: "An error occurred while installing rbtrace (0.5.1), and Bundler cannot continue." - #50 by Neo - Discourse System Administration - Unix Linux Community.

أعمل على Oracle Linux 7.7 - قديم، ولكنه قابل للمقارنة مع Ubuntu 18.04، على ما أعتقد.

سيكون من المثير للاهتمام حقًا فهم سبب نجاح ترقية نظام التشغيل أيضًا. كنت أعتقد دائمًا أن حاويات Docker معزولة بطريقة ما عن نظام التشغيل، خاصة في هذه الحالة، عندما يتعلق الأمر بجواهر Ruby. (أنا لست خبيرًا في Docker أو Ruby.)