Grazie per aver messo insieme questa guida! Ho avuto un certo successo con Minio.
Per chiunque altro stia cercando di configurarlo localmente con Docker Compose, è possibile indicare a Docker di aggiungere un alias host in modo che funzioni come sottodominio, in questo modo:
minio:
image: minio/minio
command: server --console-address :9001 /data
ports:
- "9000:9000"
- "9001:9001"
volumes:
- ./data/minio:/data
environment:
MINIO_DOMAIN: minio.mydomain.com
networks:
default:
aliases:
- assets.minio.mydomain.com
In questo caso, dovresti impostare DISCOURSE_S3_ENDPOINT=http://minio.mydomain.com:9000, DISCOURSE_S3_CDN_URL=//assets.minio.mydomain.com:9000 e impostare il tuo file locale /etc/hosts/ per puntare il sottodominio a localhost.
Questo funziona per lo più bene, ma ho notato che Discourse non è in grado di scaricare file da un indirizzo che non ha la porta 80 o 443, quindi l’upload di un’immagine funzionerà, ma poi quando tenterà di scaricarla per ridimensionarla, fallirà.
Pensavo che sarebbe stato utile menzionare questo nella sezione Minio o nel riepilogo, ovvero che DISCOURSE_S3_CDN_URL deve essere sulla porta 80 o 443.