Ich habe eine GitHub-Aktion, die Images erstellt, und sie schlägt fehl, wenn sie versucht, ein apt-get update auszuführen. Ich untersuche noch, was damit los ist, aber bei einer Installation vor 2 Stunden erhalte ich diese Fehlermeldung, wenn ich innerhalb des Containers ein apt-get update ausführe.
root@monstera-web-only:/# apt-get update
Get:1 http://deb.debian.org/debian bullseye InRelease [116 kB]
Get:2 https://dl.yarnpkg.com/debian stable InRelease [17.1 kB]
Get:3 http://deb.debian.org/debian-security bullseye-security InRelease [48.4 kB]
Get:4 http://deb.debian.org/debian bullseye-updates InRelease [44.1 kB]
Get:5 http://deb.debian.org/debian bullseye-backports InRelease [49.0 kB]
Get:6 http://apt.postgresql.org/pub/repos/apt bullseye-pgdg InRelease [91.7 kB]
Get:7 http://deb.debian.org/debian bullseye/main amd64 Packages [8.183 kB]
Err:2 https://dl.yarnpkg.com/debian stable InRelease
Die folgenden Signaturen waren ungültig: EXPKEYSIG 23E7166788B63E1E Yarn Packaging <yarn@dan.cx>
Get:8 http://deb.debian.org/debian-security bullseye-security/main amd64 Packages [216 kB]
Get:9 http://deb.debian.org/debian bullseye-updates/main amd64 Packages [14.6 kB]
Get:10 http://deb.debian.org/debian bullseye-backports/main amd64 Packages [384 kB]
Get:11 https://deb.nodesource.com/node_18.x bullseye InRelease [4.586 B]
Get:12 http://apt.postgresql.org/pub/repos/apt bullseye-pgdg/main amd64 Packages [268 kB]
Get:13 https://deb.nodesource.com/node_18.x bullseye/main amd64 Packages [774 B]
Reading package lists... Done
W: GPG error: https://dl.yarnpkg.com/debian stable InRelease: Die folgenden Signaturen waren ungültig: EXPKEYSIG 23E7166788B63E1E Yarn Packaging <yarn@dan.cx>
E: The repository 'https://dl.yarnpkg.com/debian stable InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
Ich schwöre, das ist eine Standardinstallation. . .
# cat /VERSION
2.0.20230116
Ich schaue immer noch in meine CI, ob ich dort etwas Dummes habe (was absolut möglich ist). Mir ist nicht klar, was überhaupt ein apt-get update macht.
EDIT: Meine CI hat eine Vorlage, die vim installiert. Sie führt ein apt-get update aus. Nichts bei einer normalen Installation führt meiner Meinung nach ein apt-get update aus, daher erklärt das, warum Ihre CI nicht fehlschlägt.
Viele der Importvorlagen und die Postgres-Upgrade-Vorlagen (unten aufgelistet) führen ein apt-get update aus, daher wird dies irgendwann ein Problem sein.
Ja, das wäre meine nächste Frage, da die Ausführung eines solchen Updates nicht standardmäßig erfolgt und zu schwer zu verfolgenden Abweichungen führt, da die meisten Websites ein statisches Betriebssystem verwenden und sich auf ein neues Image verlassen, um Betriebssystemebenen-Elemente zu aktualisieren.
Wenn das Yarn-Apt-Repository fehlschlägt, gehe ich davon aus, dass dies auch unsere CI beeinträchtigen wird.
Das kann ich nächste Woche überprüfen. Vielleicht müssen wir dafür ein neues Basis-Image veröffentlichen.
Checking your domain name . . .
Connection to xxx succeeded.
You should probably remove any non-standard plugins and rebuild.
Attempting to restart existing container. . .
x86_64 arch detected.
WARNING: containers/app.yml file is world-readable. You can secure this file by running: chmod o-rwx containers/app.yml
starting up existing container
+ /usr/bin/docker start app
Error response from daemon: driver failed programming external connectivity on endpoint app (c143632e34e1ae05e48759bdf163b4bbe5dc9aaf895f1fb7521f7e3784c26577): Error starting userland proxy: listen tcp 0.0.0.0:443: bind: address already in use
Error: failed to start containers: app
Failed to restart the container.
Gibt es außer einer Neuinstallation noch etwas, das ich tun könnte?
@fidelio Hallo, müssen Sie von Ihrer Discourse-Instanz aus eine Verbindung zu einer anderen Datenbank wie SQLite herstellen, d. h. führen Sie einen Datenimport aus einem anderen Forum durch? Andernfalls können Sie diese Funktionalität deaktivieren, und der normale Discourse-App-Container wird problemlos neu erstellt.
Meine Vermutung ist, dass er nicht auf PG 13 aktualisiert hat und die pg12-Vorlage verwendet? Das ist ein Problem, das sowieso gelöst werden sollte. Und es ist eine gute Vermutung, dass das Betriebssystem aktualisiert werden muss und der Umzug auf eine neue VM das Richtige ist.
@pfaffman Ah, es schien mir nur seltsam, dass sein Fehlerprotok darüber beschwerte, libsqlite3-dev zu installieren, oder verwendet Discourse das normalerweise für etwas?
@fidelio Könnten Sie hier den Abschnitt templates: Ihrer Datei /var/discourse/containers/app.yml einfügen? Stellen Sie sicher, dass keine Passwörter enthalten sind, die weiter unten in der Datei vorhanden sind. Sie können auch /var/discourse/discourse-doctor ausführen, und es wird Ihnen helfen, einen öffentlich teilbaren Bericht darüber zu erstellen, wie Ihr System konfiguriert ist.
@rahim123 Sicher, hier ist der discourse-doctor-Bericht:
Found containers/app.yml
==================== YML SETTINGS ====================
DISCOURSE_HOSTNAME=community.bfs-filmeditor.de
SMTP_ADDRESS=in-v3.mailjet.com
DEVELOPER_EMAILS=xxx
SMTP_PASSWORD=xxx
SMTP_PORT=25
SMTP_USER_NAME=xxx
LETSENCRYPT_ACCOUNT_EMAIL=xxx
==================== DOCKER INFO ====================
DOCKER VERSION: Docker version 18.06.1-ce, build e68fc7a
DOCKER PROCESSES (docker ps -a)
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ce58652241d9 local_discourse/app “/sbin/boot” 2 weeks ago Up 14 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp app
8e6b8ec432b4 local_discourse/mail-receiver “/sbin/boot” 11 months ago Up 11 months 0.0.0.0:25->25/tcp mail-receiver
ce58652241d9 local_discourse/app “/sbin/boot” 2 weeks ago Up 14 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp app
Discourse container app is running
==================== PLUGINS ====================
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/davidtaylorhq/discourse-whos-online.git
- git clone https://github.com/gdpelican/babble.git
- git clone https://github.com/angusmcleod/discourse-quick-messages.git
- git clone https://github.com/angusmcleod/discourse-events.git
- git clone https://github.com/discourse/discourse-calendar.git
- git clone https://github.com/discourse/discourse-data-explorer.git
- git clone https://github.com/davidtaylorhq/discourse-telegram-notifications.git
WARNING:
You have what appear to be non-official plugins.
If you are having trouble, you should disable them and try rebuilding again.
See https://github.com/discourse/discourse/blob/main/lib/plugin/metadata.rb for the official list.
========================================
Discourse version at community.bfs-filmeditor.de: TYPO3 CMS
Discourse version at localhost: TYPO3 CMS
==================== MEMORY INFORMATION ====================
RAM (MB): 4039
total used free shared buff/cache available
Mem: 3944 1272 1236 1067 1436 1364
Swap: 0 0 0
==================== DISK SPACE CHECK ====================
---------- OS Disk Space ----------
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 78G 60G 18G 78% /
---------- Container Disk Space ----------
Filesystem Size Used Avail Use% Mounted on
overlay 78G 60G 18G 78% /
/dev/vda1 78G 60G 18G 78% /shared
/dev/vda1 78G 60G 18G 78% /var/log
==================== DISK INFORMATION ====================
Disk /dev/vda: 80 GiB, 85899345920 bytes, 167772160 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: C1F9A1FE-534C-4DAC-9299-5CC180C29DCE
Device Start End Sectors Size Type
/dev/vda1 227328 167772126 167544799 79.9G Linux filesystem
/dev/vda14 2048 10239 8192 4M BIOS boot
/dev/vda15 10240 227327 217088 106M Microsoft basic data
Partition table entries are not in disk order.
==================== END DISK INFORMATION ====================
Ich habe „quick messages“ deaktiviert, aber noch nicht entfernt.
GNU nano 2.9.3 containers/app.yml
## Dies ist die All-in-One, eigenständige Discourse Docker Container-Vorlage
##
## Nach Änderungen an dieser Datei MÜSSEN Sie neu erstellen
## /var/discourse/launcher rebuild app
##
## SEIEN SIE *SEHR* VORSICHTIG BEIM BEARBEITEN!
## YAML-DATEIEN SIND SUPER SUPER EMPFINDLICH GEGEN FEHLER BEI LEERZEICHEN ODER AUSRICHTUNG!
## Besuchen Sie http://www.yamllint.com/, um diese Datei bei Bedarf zu validieren
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
- "templates/web.ratelimited.template.yml"
## Kommentieren Sie diese beiden Zeilen aus, wenn Sie Lets Encrypt (https) hinzufügen möchten
- "templates/web.ssl.template.yml"
- "templates/web.letsencrypt.ssl.template.yml"
- "templates/import/mbox.template.yml"
## Welche TCP/IP-Ports soll dieser Container verfügbar machen?
## Wenn Sie möchten, dass Discourse einen Port mit einem anderen Webserver wie Apache oder nginx teilt,
## siehe https://meta.discourse.org/t/17247 für Details
expose:
- "80:80" # http
- "443:443" # https
params:
db_default_text_search_config: "pg_catalog.english"
## Setzen Sie db_shared_buffers auf maximal 25% des Gesamtspeichers.
## wird automatisch von bootstrap basierend auf dem erkannten RAM gesetzt, oder Sie können überschreiben
db_shared_buffers: "1024MB"
## kann die Sortierleistung verbessern, erhöht aber den Speicherverbrauch pro Verbindung
#db_work_mem: "40MB"
## Welche Git-Revision soll dieser Container verwenden? (Standard: tests-passed)
#version: tests-passed
env:
LANG: en_US.UTF-8
# DISCOURSE_DEFAULT_LOCALE: en
## Wie viele gleichzeitige Webanfragen werden unterstützt? Hängt von Speicher und CPU-Kernen ab.
## wird automatisch von bootstrap basierend auf den erkannten CPUs gesetzt, oder Sie können überschreiben
UNICORN_WORKERS: 4