cmdntd
(cmdntd)
07.Май.2025 06:20:27
1
После последнего обновления я не могу попасть на свой Discourse.
Теперь я также не могу пересобрать приложение.
Launcher обновлён, перезагрузка...
Обнаружена архитектура x86_64.
Проверка актуальности Launcher...
Обновление Launcher...
Обновление 721facb..09d5eb6
ошибка: локальные изменения в следующих файлах будут перезаписаны при слиянии:
image/base/Dockerfile
Сохраните изменения или положите их в стэш перед слиянием.
Прерывание
не удалось обновить
Jagster
(Jakke Flemming)
07.Май.2025 06:26:37
3
Не редактируйте напрямую и следуйте предложенным рекомендациям?
cmdntd
(cmdntd)
07.Май.2025 06:28:45
4
Я ничего не редактирую, просто обновляю Discourse. Как это исправить? Не понимаю, что предлагается.
Сообщение указывает на то, что вы отредактировали Dockerfile и необходимо зафиксировать изменения.
Это странно, так как вы говорили, что не редактировали ни одного файла.
Что показывает git status?
cmdntd
(cmdntd)
07.Май.2025 07:44:47
7
Обновление изменило это автоматически. Или возник конфликт с новым источником (ничего не изменилось, просто фальшивое уведомление).
/var/discourse# git status
На ветке main
Ваша ветка отстает от 'origin/main' на 2 коммита и может быть быстро продвинута.
(используйте "git pull" для обновления локальной ветки)
Изменения, не добавленные в индекс:
(используйте "git add <файл>..." для обновления того, что будет закоммичено)
(используйте "git restore <файл>..." для отмены изменений в рабочей директории)
изменен: README.md
изменен: discourse-setup
изменен: image/base/Dockerfile
изменен: image/base/install-imagemagick
изменен: launcher
изменен: templates/import/phpbb3.template.yml
изменен: templates/web.template.yml
Неотслеживаемые файлы:
(используйте "git add <файл>..." для включения в коммит)
404.html
index.html
Изменений, готовых к коммиту, нет (используйте "git add" и/или "git commit -a")
Что ж, это интересно. Что это за изменения?
Вы можете использовать git diff
cmdntd
(cmdntd)
07.Май.2025 07:49:27
9
/var/discourse# git diff
diff --git a/README.md b/README.md
index 6f376b6..465f1b8 100644
--- a/README.md
+++ b/README.md
@@ -10,13 +10,8 @@
## Начало работы
-> Вы знали, что Discourse также предлагает доступные варианты хостинга? Все наши услуги хостинга напрямую поддерживают разработку Discourse.
->
-> 👉 [Узнать больше о хостинге Discourse](https://discourse.org/pricing)
+Самый простой способ начать работу — использовать шаблон **standalone**, который можно установить за 30 минут или меньше. Подробные инструкции по установке см. в
-Самый простой способ начать работу с самостоятельным хостингом Discourse — использовать шаблон standalone, который можно установить за 30 минут или меньше.
-
-Подробные инструкции по установке см. в:
https://github.com/discourse/discourse/blob/main/docs/INSTALL-cloud.md
## Структура каталогов
diff --git a/discourse-setup b/discourse-setup
index 5adfe13..4545deb 100755
--- a/discourse-setup
+++ b/discourse-setup
@@ -193,11 +193,11 @@ check_disk_and_memory() {
exit 1
fi
- if [ "$avail_mem" -le 4 ]; then
+ if [ "$avail_mem" -le 2 ]; then
total_swap=`free -g --si | awk ' /Swap:/ {print $2} '`
if [ "$total_swap" -lt 2 ]; then
- echo "WARNING: Discourse requires at least 2GB of swap when running with 4GB of RAM"
+ echo "WARNING: Discourse requires at least 2GB of swap when running with 2GB of RAM"
echo "or less. This system does not appear to have sufficient swap space."
echo
echo "Without sufficient swap space, your site may not work properly, and future"
diff --git a/image/base/Dockerfile b/image/base/Dockerfile
index 66de0df..3eab95a 100644
--- a/image/base/Dockerfile
+++ b/image/base/Dockerfile
@@ -2,11 +2,7 @@
# VERSION: release
ARG DEBIAN_RELEASE=bookworm
-
FROM discourse/ruby:3.3.6-${DEBIAN_RELEASE}-slim AS builder
-ARG DEBIAN_RELEASE
-ENV DEBIAN_RELEASE=${DEBIAN_RELEASE}
-RUN echo "deb http://deb.debian.org/debian ${DEBIAN_RELEASE}-backports main" > "/etc/apt/sources.list.d/${DEBIAN_RELEASE}-backports.list"
RUN apt update && \
DEBIAN_FRONTEND=noninteractive apt-get -y install wget \
autoconf build-essential \
@@ -66,9 +62,9 @@ RUN --mount=type=tmpfs,target=/var/log \
libtcmalloc-minimal4 cmake \
pngcrush pngquant ripgrep poppler-utils \
# imagemagick runtime dependencies
- ghostscript libjbig0 libtiff6 libpng16-16 libfontconfig1 \
+ libheif1 libjbig0 libtiff6 libpng16-16 libfontconfig1 \
libwebpdemux2 libwebpmux3 libxext6 librsvg2-2 libgomp1 \
- fonts-urw-base35 libheif1/${DEBIAN_RELEASE}-backports \
+ fonts-urw-base35 \
# nginx runtime dependencies \
nginx-common && \
# install these without recommends to avoid pulling in e.g.
diff --git a/image/base/install-imagemagick b/image/base/install-imagemagick
index b1402bd..9ab268e 100755
--- a/image/base/install-imagemagick
+++ b/image/base/install-imagemagick
@@ -14,17 +14,16 @@ WDIR=/tmp/imagemagick
apt -y -q remove imagemagick
apt -y -q install git make gcc pkg-config autoconf curl g++ yasm cmake \
libde265-0 libde265-dev ${LIBJPEGTURBO} libwebp7 x265 libx265-dev libtool \
- libpng16-16 libpng-dev libwebp-dev libgomp1 libaom-dev \
+ libpng16-16 libpng-dev libwebp-dev libgomp1 \
libwebpmux3 libwebpdemux2 ghostscript libxml2-dev libxml2-utils librsvg2-dev \
- libltdl7-dev libbz2-dev gsfonts libtiff-dev libfreetype6-dev libjpeg-dev
+ libltdl7-dev libbz2-dev gsfonts libtiff-dev libfreetype6-dev libjpeg-dev libheif1 libheif-dev
-if cat /etc/issue | grep -qi Debian; then
- # Get VERSION_CODENAME
- . /etc/os-release
- # Use backports
- apt -y -q install libheif1/$VERSION_CODENAME-backports libheif-dev/$VERSION_CODENAME-backports
+# Ubuntu doesn't like backports
+if cat /etc/issue | grep -qiE 'Debian GNU/Linux 12|Ubuntu 22'; then
+ apt -y install libaom-dev
else
- apt -y -q install libheif1 libheif-dev
+ # Use backports instead of compiling it
+ apt -y -q install -t bullseye-backports libaom-dev
fi
mkdir -p $WDIR
diff --git a/launcher b/launcher
index 750ce3b..db2b25c 100755
--- a/launcher
+++ b/launcher
@@ -92,7 +92,7 @@ kernel_min_version='4.4.0'
config_file=containers/"$config".yml
cidbootstrap=cids/"$config"_bootstrap.cid
local_discourse=local_discourse
-image="discourse/base:2.0.20250226-0128"
+image="discourse/base:2.0.20250129-0720"
docker_path=`which docker.io 2> /dev/null || which docker`
git_path=`which git`
@@ -491,7 +491,7 @@ fi
if [ -d /var/discourse/shared/standalone/postgres_data_old ]; then
echo
- echo "Old PostgreSQL backup data cluster detected taking up $(du -hs /var/discourse/shared/standalone/postgres_data_old | awk '{print $1}')"
+ echo "Old PostgreSQL backup data cluster detected taking up $(du -hs /var/discourse/shared/standalone/postgres_data_old | awk '{print $1}') detected"
read -p "Would you like to remove it? (y/N): " -n 1 -r && echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
diff --git a/templates/import/phpbb3.template.yml b/templates/import/phpbb3.template.yml
index 4744620..3b70cf4 100644
--- a/templates/import/phpbb3.template.yml
+++ b/templates/import/phpbb3.template.yml
@@ -1,8 +1,5 @@
# This template installs MariaDB and all dependencies needed for importing from phpBB3.
-env:
- UNICORN_SIDEKIQS: 0
-
params:
home: /var/www/discourse
@@ -11,6 +8,7 @@ hooks:
- exec:
cd: /etc/service
cmd:
+ - rm -R unicorn
- rm -R nginx
- rm -R cron
@@ -18,6 +16,7 @@ hooks:
cd: /etc/runit/3.d
cmd:
- rm 01-nginx
+ - rm 02-unicorn
- file:
path: /etc/mysql/conf.d/import.cnf
diff --git a/templates/web.template.yml b/templates/web.template.yml
index 813a63f..9b541c9 100644
--- a/templates/web.template.yml
+++ b/templates/web.template.yml
@@ -240,7 +240,13 @@ run:
chmod: +x
contents: |
#!/bin/bash
- (cd /var/www/discourse && RAILS_ENV=production sudo -H -E -u discourse bundle exec script/rails "$@")
+ # If they requested a console, load pry instead
+ if [ "$*" == "c" -o "$*" == "console" ]
+ then
+ (cd /var/www/discourse && RAILS_ENV=production sudo -H -E -u discourse bundle exec pry -r ./config/environment)
+ else
+ (cd /var/www/discourse && RAILS_ENV=production sudo -H -E -u discourse bundle exec script/rails "$@")
+ fi
- file:
path: /usr/local/bin/rake
(END)
Команда git reset --hard удалит все ваши локальные изменения, но перед её выполнением убедитесь, что нет изменений, которые вы хотите сохранить.
Более безопасный способ — просто выполнить:
git stash
затем вы сможете продолжить полную пересборку через CLI.
cmdntd
(cmdntd)
07.Май.2025 14:56:07
11
Кажется, с git reset --hard всё в порядке. Но мне нужно удалить discourse-multilingual , этот плагин может вызвать ошибку.