Mautic 5 install through docker

Your software
My Mautic version is: 5
My PHP version is:
My Database type and version is:

Distributor ID: Ubuntu
Description: Ubuntu 22.04.4 LTS
Release: 22.04
Codename: jammy

Your problem
Hello,
I set a ubuntu server host from scratch and I’d like to install Mautic through docker.
I installed docker using the tutorial here:
Ubuntu | Docker Docs

I followed the steps suggested here for Mautic:
Mautic 5 setup via docker - Product Support / Mautic 5 Install/Upgrade Support - Mautic Forums

git clone GitHub - mautic/docker-mautic: Docker Image for Mautic
cd docker-mautic/examples/basic
docker compose up

But when I run “docker compose up”, I get errors

These errors are showing in the log:

/home/marco/docker-mautic/examples/basic/docker-compose.yml: the attribute version is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Running 4/0
:heavy_check_mark: Container basic-db-1 Created 0.0s
:heavy_check_mark: Container basic-mautic_web-1 Created 0.0s
:heavy_check_mark: Container basic-mautic_cron-1 Created 0.0s
:heavy_check_mark: Container basic-mautic_worker-1 Created 0.0s
Attaching to db-1, mautic_cron-1, mautic_web-1, mautic_worker-1
db-1 | 2024-12-04 11:57:34+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.40-1.el9 started.
db-1 | 2024-12-04 11:57:35+00:00 [Note] [Entrypoint]: Switching to dedicated user ‘mysql’
db-1 | 2024-12-04 11:57:35+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.40-1.el9 started.
db-1 | ‘/var/lib/mysql/mysql.sock’ → ‘/var/run/mysqld/mysqld.sock’
db-1 | 2024-12-04T11:57:36.069395Z 0 [Warning] [MY-011068] [Server] The syntax ‘–skip-host-cache’ is deprecated and will be removed in a future release. Please use SET GLOBAL host_cache_size=0 instead.
db-1 | 2024-12-04T11:57:36.071464Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.40) starting as process 1
db-1 | 2024-12-04T11:57:36.135262Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
db-1 | 2024-12-04T11:57:37.510109Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
db-1 | 2024-12-04T11:57:38.364183Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
db-1 | 2024-12-04T11:57:38.364221Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
db-1 | 2024-12-04T11:57:38.366909Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location ‘/var/run/mysqld’ in the path is accessible to all OS users. Consider choosing a different directory.
db-1 | 2024-12-04T11:57:38.487090Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: ‘::’ port: 33060, socket: /var/run/mysqld/mysqlx.sock
db-1 | 2024-12-04T11:57:38.487301Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: ‘8.0.40’ socket: ‘/var/run/mysqld/mysqld.sock’ port: 3306 MySQL Community Server - GPL.
mautic_web-1 | AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 172.18.0.3. Set the ‘ServerName’ directive globally to suppress this message
mautic_web-1 | AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 172.18.0.3. Set the ‘ServerName’ directive globally to suppress this message
mautic_web-1 | [Wed Dec 04 11:57:43.183099 2024] [mpm_prefork:notice] [pid 11] AH00163: Apache/2.4.57 (Debian) PHP/8.1.28 configured – resuming normal operations
mautic_web-1 | [Wed Dec 04 11:57:43.183306 2024] [core:notice] [pid 11] AH00094: Command line: ‘apache2 -D FOREGROUND’
mautic_web-1 | 127.0.0.1 - - [04/Dec/2024:11:57:44 +0000] “GET / HTTP/1.1” 302 648 “-” “curl/7.88.1”
mautic_cron-1 | mkfifo: cannot create fifo ‘/tmp/stdout’: File exists
mautic_cron-1 | Mautic not installed, waiting to start cron
mautic_worker-1 | Mautic not installed, waiting to start workers
mautic_web-1 | 127.0.0.1 - - [04/Dec/2024:11:57:51 +0000] “GET / HTTP/1.1” 302 648 “-” “curl/7.88.1”
mautic_cron-1 | Mautic not installed, waiting to start cron
mautic_worker-1 | Mautic not installed, waiting to start workers
mautic_web-1 | 127.0.0.1 - - [04/Dec/2024:11:57:56 +0000] “GET / HTTP/1.1” 302 648 “-” “curl/7.88.1”
mautic_cron-1 | Mautic not installed, waiting to start cron
mautic_worker-1 | Mautic not installed, waiting to start workers
mautic_web-1 | 127.0.0.1 - - [04/Dec/2024:11:58:01 +0000] “GET / HTTP/1.1” 302 648 “-” “curl/7.88.1”
mautic_cron-1 | Mautic not installed, waiting to start cron
mautic_worker-1 | Mautic not installed, waiting to start workers
mautic_web-1 | 127.0.0.1 - - [04/Dec/2024:11:58:06 +0000] “GET / HTTP/1.1” 302 648 “-” “curl/7.88.1”
mautic_cron-1 | Mautic not installed, waiting to start cron
mautic_worker-1 | Mautic not installed, waiting to start workers
mautic_web-1 | 127.0.0.1 - - [04/Dec/2024:11:58:11 +0000] “GET / HTTP/1.1” 302 648 “-” “curl/7.88.1”
mautic_cron-1 | Mautic not installed, waiting to start cron
mautic_worker-1 | Mautic not installed, waiting to start workers

When i try to open the webpage with localhost, I get the error connection refused.

What am I missing?

Steps I have tried to fix the problem:

None

Have you set
DOCKER_MAUTIC_LOAD_TEST_DATA=true
in the env file?
Otherwise the database is not created and prevent starting.
From the logs you show it looks good in the first. All containers where created. Next, the compose file starts them up one after the other, waiting for the former service to be fully up.
mautic_web refuses to start, this is why mautic_cron and mautic_worker are waiting for it to be accessible.

The 302 status code indicates that the web frontend wants you to redirect. I guess that is the redirect to the installer.

I had my troubles with the docker compose file as well and therefore used my own version. See this article for hints Feedback on the Mautic 5 docker image experience.