Autoalojamiento gratuito (con advertencias) con Oracle Cloud

https://blogs.oracle.com/developers/install-run-discourse-for-free-in-the-oracle-cloud

Esta entrada del blog es del año pasado. No vi ninguna mención aquí; creo que Oracle, como empresa de alojamiento, está fuera del radar para la mayoría de las personas.

Por lo tanto, antes de publicar, decidí probarlo yo mismo para ver si realmente es viable. Creé un sitio de demostración:

https://www.opendiscussion.pw

Me registré para una cuenta en Oracle Cloud. Indicaba que tardaría 15 minutos en validar la cuenta, pero tuve que esperar dos días debido a un problema con mi tarjeta de crédito (se solicita una tarjeta de crédito para la validación).

Seguí las instrucciones del artículo del blog y luego las instrucciones normales de instalación de Docker para Discourse. ¡Casi funcionó a la primera! Tuve un problema con la configuración del correo electrónico. Creo que es la única parte que no está explicada correctamente en el artículo del blog. Tuve que leer la documentación. La documentación de Oracle es muy buena.

Esto es lo que incluye este nivel:

  • 2 (dos) máquinas virtuales (VM)
    La VM tiene 1/8 de un OCPU con la capacidad de utilizar recursos adicionales de CPU. VM.Standard.E2.1.Micro. 2.0 GHz AMD EPYC 7551
    Memoria: 1 GB

  • Ancho de banda: 10 TB

  • Almacenamiento: 100 GB de volumen de bloque

  • Correo electrónico: 1,000 / mes (SMTP no está incluido)

31 Me gusta

Cabe destacar que la configuración que Oracle proporciona incluye un disco de ~40 GB (para el sistema operativo y los datos de usuario) más una partición de intercambio de 8 GB. No es necesario un archivo de intercambio. Y dado que puedes obtener dos máquinas virtuales en el nivel “siempre gratuito”, separar el contenedor de la base de datos es una opción de escalado.

(Por alguna razón, la base de datos PaaS gratuita allí no es Postgres. :wink: )

6 Me gusta

¡Gracias por esta información interesante!

Yo también tuve un problema. Lo intenté varias veces sin éxito (mensaje de mi banco de “código de seguridad incorrecto”, aunque el código era correcto).
Lo intenté en otro navegador y funcionó; simplemente usé otra dirección de correo electrónico… Y ahora llevo varias horas esperando que mi cuenta sea validada.

Es gratis, pero el proceso de registro es un poco molesto… :sweat_smile:

1 me gusta

¿Qué fue exactamente lo que falló en la parte del correo? He logrado instalar Discourse en Oracle Cloud, pero no logro, por nada del mundo, que funcione el envío de correos. Cuando voy a registrar el usuario administrador en la instalación de Discourse, nunca recibo un correo.

Discourse-doctor se conecta al servidor SMTP de Oracle, pero el correo no se envía.

He configurado varios remitentes aprobados por si acaso: mi correo de administrador, noreply@[dominio del foro] y noreply@[dominio principal]. ¿Cuál es el importante?

También he añadido un registro TXT en la configuración DNS de mi dominio con la cadena SPF recomendada.

1 me gusta

Fue complicado. Si recuerdo correctamente, lo que hizo que funcionara para mí fue cambiar containers/app.yml:

  ## 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 de inscripción, vuelva a comentar la línea. Solo necesita ejecutarse una vez.
  - exec: rails r "SiteSetting.notification_email='noreply@opendiscussion.pw'"
2 Me gusta

¡Gracias por la respuesta!

Lamentablemente, eso no ayudó (incluso después de reconstruir la aplicación).

¿Puedo preguntarte cómo se ven tus registros TXT?

¿Tampoco descomentaste la configuración de “START TLS”?

1 me gusta

¿Y qué hiciste con el correo electrónico? ¿Tienes que pagar por él? (porque dijiste que SMTP no está incluido)

1 me gusta

SMTP está incluido. En su momento no lo estaba en todas las regiones. Simplemente es malditamente difícil de configurar… :neutral_face:

2 Me gusta

¿Sabes si hay un registro SMTP en algún lugar de Oracle Cloud? Me gustaría saber por qué no se envía el correo electrónico cuando puedo contactar con el servidor SMTP sin problemas. ¿Por qué no tengo autorización o cuál es el problema?

1 me gusta

Oracle Cloud ofrece un servicio SMTP, pero no está incluido en el nivel siempre gratuito. Es muy económico (0,085 USD por 1000 correos electrónicos), así que lo uso de todos modos. Aún no me han cobrado nada.

https://www.oracle.com/cloud/networking/email-delivery.html#pricing

https://docs.cloud.oracle.com/en-us/iaas/Content/Email/Concepts/overview.htm

2 Me gusta

Mi error, tienes razón. No me di cuenta de que me habían puesto a prueba con la versión de pago, ya que me registré en el plan gratuito.

¿Existen servicios SMTP alternativos gratuitos que funcionen con Discourse, manteniendo Discourse en Oracle Cloud?

3 Me gusta

Creo que el único que queda es Pricing | Mailjet. Es realmente una lástima que la mafia de Silicon Valley haya robado los correos electrónicos gratuitos de internet :smiley:

4 Me gusta

Después de 1 mes intentando que mi cuenta de prueba funcionara, con el soporte de chat diciendo que no podía ayudarme, el soporte por correo electrónico que tampoco ayudó y solo respondió una vez, diciendo que obtendrían información sobre mi cuenta y se pondrían en contacto, pero nunca lo hicieron…

Le pedí a un amigo que abriera una cuenta por mí y funcionó a la perfección en menos de 15 minutos.

Luego intenté instalar Discourse y tuve muchas dificultades. Seguí el tutorial de instalación de Discourse en Oracle, pero por alguna razón, no pude conectarme al puerto 443.

Intenté instalar Discourse en una imagen regular de Ubuntu, pero no pude conectarme a través del puerto 80 ni del 443 por razones desconocidas.

Volví a las instrucciones oficiales; al principio no funcionó (ambas conexiones de puertos fallaron), pero reinicié Docker y luego se conectó mágicamente a ambos puertos.

Así que mi experiencia no es la mejor, ya sea que los problemas provengan de mí o de Oracle.

Pero al final, ahora tengo una instalación de Discourse gratuita, en línea, obviamente no la más rápida, pero que funciona. :+1:t6:

Para aquellos que quieran seguir el mismo tutorial, hay un pequeño error en la parte del firewall del servidor.

En lugar de:
sudo firewall-cmd —reload
Debes escribir:
sudo firewall-cmd --reload

6 Me gusta

Por defecto, no puedes instalar Discourse porque las conexiones a los puertos 80 y 443 no están permitidas. Necesitas permitir ambas en la lista de seguridad (en el panel de control de Oracle) y en el firewall de la instancia (vía SSH).

Así es como hacerlo en una instalación regular de Ubuntu (es ligeramente diferente de su guía oficial, que usa otra imagen de Linux).

En el panel de Oracle:

Después de crear tu instancia de Ubuntu, ve a Detalles de la instancia y haz clic en el enlace de la subred:

Haz clic en la Lista de seguridad:

Haz clic en Agregar reglas de entrada, selecciona el protocolo TCP, establece el CIDR de origen como 0.0.0.0/0 y el rango de puertos de destino como 80,443.
Valida haciendo clic en “Agregar reglas de entrada”.

Verifica que las reglas se hayan agregado en la lista de seguridad:

En la línea de comandos de tu servidor a través de SSH:

Agrega estas reglas a iptables:

iptables -I INPUT 5 -i ens3 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT 5 -i ens3 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT

El comando agregará las reglas en el lugar correcto. Si simplemente las agregas a las reglas existentes sin especificar el número de línea (5), no funcionará porque serán sobrescritas por una regla previa existente de “rechazar todo”.

Guarda las reglas para que sigan ahí después de un reinicio:

netfilter-persistent save

¡Ahora puedes instalar Discourse! :tada:

8 Me gusta

Hola, ¿recomiendas Oracle Cloud para un sitio en producción con un tráfico considerable?
Gracias

1 me gusta

Creo que puedes alojar una comunidad pequeña si tú y tus usuarios no os importa mucho la velocidad del foro.
Pero no lo recomendaría, ya que puedes encontrar un hosting barato (~5 $/mes) con especificaciones mucho mejores.

@Hector, ¿sigue https://www.opendiscussion.pw alojado en un servidor gratuito?

4 Me gusta

Hola, ¿con un hosting barato de ~5$/mes te refieres al droplet de 5$ de Digital Ocean?

1 me gusta

Sí, por ejemplo.

Personalmente, me gusta Hetzner porque no son caros y sus servidores se facturan por hora, lo cual es ideal para probar cosas durante periodos cortos. Pero creo que solo tienen servidores en Europa.

3 Me gusta

Sí, sigue en el servidor gratuito. No tiene tráfico, así que no puedo decir de qué es capaz. También lo uso para desarrollo. Hasta ahora todo bien.

3 Me gusta

¿Para un VPS de Hetzner también tendré que instalar LAMP, actualizar el servidor, tener cuidado con los hackers, etc.?

Por otro lado, en Digital Ocean todo está listo; no necesito asegurar el servidor, ¿solo debo instalar y gestionar Discourse? ¿Es esta la verdadera diferencia entre Digital Ocean y cualquier otro VPS?

¿Digital Ocean es como un VPS gestionado?

¡Gracias!
Deb

1 me gusta