¿Es correcto que tu código sería algo como lo siguiente, si quiero que www.nzarchitecture.net.nz esté cubierto por el mismo certificado letsencrypt que nzarchitecture.net.nz?
after_ssl:
- replace:
filename: /usr/local/bin/letsencrypt
from: /-d nzarchitecture.net.nz /
to: "-d nzarchitecture.net.nz -d www.nzarchitecture.net.nz "
global: true
Intenté añadir esta sección (¡excelente terminología, gracias!) al final de app.yml, en lugar de la sección ‘after_ssl:’ original, y ahora puedo reconstruir Discourse sin errores, pero esto no parece ayudarme; mi navegador todavía muestra una respuesta ‘net::ERR_CERT_COMMON_NAME_INVALID’ si intento usar un prefijo ‘www’ antes de mi dominio principal/certificado nzarchitecture.net.nz.
Mi app.yml completo a continuación, en caso de que ayude en algo (contraseña y direcciones de correo electrónico redactadas)
## esta es la plantilla de contenedor Docker de Discourse todo en uno y autónoma
##
## Después de realizar cambios en este archivo, DEBE reconstruir
## /var/discourse/launcher rebuild app
##
## ¡TENGA MUCHO CUIDADO AL EDITAR!
## ¡LOS ARCHIVOS YAML SON SÚPER SÚPER SENSIBLES A ERRORES DE ESPACIO EN BLANCO O ALINEACIÓN!
## visite http://www.yamllint.com/ para validar este archivo según sea necesario
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
- "templates/web.ratelimited.template.yml"
## Descomente estas dos líneas si desea añadir Lets Encrypt (https)
- "templates/web.ssl.template.yml"
- "templates/web.letsencrypt.ssl.template.yml"
- "templates/import/mysql-dep.template.yml"
## ¿qué puertos TCP/IP debe exponer este contenedor?
## Si desea que Discourse comparta un puerto con otro servidor web como Apache o nginx,
## vea https://meta.discourse.org/t/17247 para más detalles
expose:
- "80:80" # http
- "443:443" # https
params:
db_default_text_search_config: "pg_catalog.english"
## Establezca db_shared_buffers en un máximo del 25% de la memoria total.
## será configurado automáticamente por bootstrap según la RAM detectada, o puede anularlo
db_shared_buffers: "128MB"
## puede mejorar el rendimiento de ordenación, pero aumenta el uso de memoria por conexión
#db_work_mem: "40MB"
## ¿Qué revisión de Git debe usar este contenedor? (por defecto: tests-passed)
#version: tests-passed
env:
LANG: en_US.UTF-8
# DISCOURSE_DEFAULT_LOCALE: en
## ¿Cuántas solicitudes web concurrentes se admiten? Depende de la memoria y los núcleos de CPU.
## será configurado automáticamente por bootstrap según las CPU detectadas, o puede anularlo
UNICORN_WORKERS: 2
## TODO: El nombre de dominio al que responderá esta instancia de Discourse
## Requerido. Discourse no funcionará con un número IP desnudo.
DISCOURSE_HOSTNAME: nzarchitecture.net.nz
## Descomente si desea que el contenedor se inicie con el mismo
## nombre de host (-h opción) que el especificado anteriormente (por defecto "$hostname-$config")
#DOCKER_USE_HOSTNAME: true
## TODO: Lista de correos electrónicos separados por comas que serán administradores y desarrolladores
## en el registro inicial ejemplo 'user1@example.com,user2@example.com'
DISCOURSE_DEVELOPER_EMAILS: '****************'
## TODO: El servidor de correo SMTP utilizado para validar nuevas cuentas y enviar notificaciones
# Se requieren la DIRECCIÓN SMTP, el nombre de usuario y la contraseña
# ADVERTENCIA: el carácter '#' en la contraseña SMTP puede causar problemas.
DISCOURSE_SMTP_ADDRESS: smtp.mailgun.org
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: ****************
DISCOURSE_SMTP_PASSWORD: "****************"
#DISCOURSE_SMTP_ENABLE_START_TLS: true # (opcional, por defecto true)
## Si añadió la plantilla Lets Encrypt, descomente a continuación para obtener un certificado SSL gratuito
LETSENCRYPT_ACCOUNT_EMAIL: ******************
## La dirección CDN http o https para esta instancia de Discourse (configurada para tirar)
## vea https://meta.discourse.org/t/14857 para más detalles
#DISCOURSE_CDN_URL: https://discourse-cdn.example.com
## El contenedor Docker no tiene estado; todos los datos se almacenan en /shared
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
## Los plugins van aquí
## vea https://meta.discourse.org/t/19157 para más detalles
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/discourse/discourse-bbcode.git
## Cualquier comando personalizado para ejecutar después de la compilación
run:
- exec: echo "Inicio de comandos personalizados"
## Si desea establecer la dirección de correo electrónico 'De' para su primer registro, descomente y cambie:
## Después de recibir el primer correo electrónico de registro, vuelva a comentar la línea. Solo necesita ejecutarse una vez.
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
- exec: echo "Fin de comandos personalizados"
after_ssl:
- replace:
filename: /usr/local/bin/letsencrypt
from: /-d nzarchitecture.net.nz /
to: "-d nzarchitecture.net.nz -d www.nzarchitecture.net.nz "
global: true
¿Es el hecho de que no haya archivos en /usr/local/bin/ parte del problema?
¿Dónde encuentro el archivo letsencrypt correcto para poner allí, si eso es lo que se necesita?
Y, si ‘letsencrypt’ es el nombre del archivo al final de esa ruta, ¿es normal que no haya una extensión de archivo como parte de este nombre de archivo?