cmdntd
(cmdntd)
May 7, 2025, 6:20am
1
I can not go to my discourse after the last upgrade
And now, I can not rebuild my app
Launcher updated, restarting...
x86_64 arch detected.
Ensuring launcher is up to date
Updating Launcher...
Updating 721facb..09d5eb6
error: Your local changes to the following files would be overwritten by merge:
image/base/Dockerfile
Please commit your changes or stash them before you merge.
Aborting
failed to update
Jagster
(Jakke Lehtonen)
May 7, 2025, 6:26am
3
Don’t edit directly and do what it suggests?
cmdntd
(cmdntd)
May 7, 2025, 6:28am
4
I do not edit anything, just upgrade discourse.
How could I fix it? Do not understand what it suggests.
The message suggests that you have edited the Dockerfile and need to commit the changes.
It’s odd since you said you never edited any file.
1 Like
what does git status
reveal?
1 Like
cmdntd
(cmdntd)
May 7, 2025, 7:44am
7
Upgrade changed it automatically. Or it conflics with new source (nothing changed, just fake notice).
/var/discourse# git status
On branch main
Your branch is behind 'origin/main' by 2 commits, and can be fast-forwarded.
(use "git pull" to update your local branch)
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: README.md
modified: discourse-setup
modified: image/base/Dockerfile
modified: image/base/install-imagemagick
modified: launcher
modified: templates/import/phpbb3.template.yml
modified: templates/web.template.yml
Untracked files:
(use "git add <file>..." to include in what will be committed)
404.html
index.html
no changes added to commit (use "git add" and/or "git commit -a")
Well that’s curious. What are all these changes?
You can git diff
cmdntd
(cmdntd)
May 7, 2025, 7:49am
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 @@
## Getting Started
-> Did you know that Discourse also offers affordable hosting options? All of our hosting services directly support the development of Discourse.
->
-> 👉 [Learn more about Discourse hosting](https://discourse.org/pricing)
+The simplest way to get started is via the **standalone** template, which can be installed in 30 minutes or less. For detailed install instructions, see
-The easiest way to get started with self-hosting Discourse is via the standalone template, which can be installed in 30 minutes or less.
-
-For detailed install instructions, check out:
https://github.com/discourse/discourse/blob/main/docs/INSTALL-cloud.md
## Directory Structure
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
will get rid of all your local changes, but please make sure there are no changes you want to keep before you run that.
a safer way might just be to do:
git stash
then you can carry on with a full cli rebuild.
1 Like
cmdntd
(cmdntd)
May 7, 2025, 2:56pm
11
It seems ok with git reset --hard
. But I need to remove discourse-multilingual , this one may cause error.