Deploy (Github+Hosting compartido)

  • Autor Autor uncoderbyte
  • Fecha de inicio Fecha de inicio
U

uncoderbyte

Gamma
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola, tengo un sitio web subido a un repositorio de Github y me gustaría realizar el Deploy a un Hosting compartido, en este caso es Bana 😎
Estuve buscando tutoriales y muchos lo realizan mediante una misma aplicación de Git que se encuentra en el mismo Hosting, de la cual no dispongo, o son realizados con Laravel (en este caso es Codeigniter).

Quisiera saber si es correcto subirlo mediante la utilización de claves SSH (estas sí las puedo utilizar en mi Hosting) y Github o esto es para otra cosa.
¿Alguien podría indicarme si esto es correcto?.
 
Si es php, Solo tiene que poner el codigo fuente en su servidor. Si tiene acceso a su consola en banahosting que haga un git clone.
Si no quiere hacer muchos pasos solo descargué el codigo fuente (zip), lo descomprima y suba por sftp los archivos a su directorio
 
Si es php, Solo tiene que poner el codigo fuente en su servidor. Si tiene acceso a su consola en banahosting que haga un git clone.
Si no quiere hacer muchos pasos solo descargué el codigo fuente (zip), lo descomprima y suba por sftp los archivos a su directorio
La idea es utilizar Git para hacerlo mas profesional digamos. Con FTP lo venía haciendo de manera tradicional.
Intentaré lo de la consola 😎
 
Desde la consola puedes usar las funciones de GIT en caso que el hosting lo tenga instalado y hacer un clone de tu repositorio.
y luego cada cambio que hagas en tu git, lo actualizas en tu hosting con un push y listo.

Acuerdate de tu archivo de configuraciones siempre agregarle al gitignore para que no te trate de pisar cada vez que quieras hacer un push en tu hosting.

Pd.: un proyecto que hice para una empresa lo tengo asi, entonces cada actualizacion lo subo a mi git y luego hago el push en mi hosting para actualizar los ficheros.
 
Desde la consola puedes usar las funciones de GIT en caso que el hosting lo tenga instalado y hacer un clone de tu repositorio.
y luego cada cambio que hagas en tu git, lo actualizas en tu hosting con un push y listo.

Acuerdate de tu archivo de configuraciones siempre agregarle al gitignore para que no te trate de pisar cada vez que quieras hacer un push en tu hosting.

Pd.: un proyecto que hice para una empresa lo tengo asi, entonces cada actualizacion lo subo a mi git y luego hago el push en mi hosting para actualizar los ficheros.
Perfecto, entonces voy bien orientado 😎
Me fijé y tengo Git en el Hosting.
Aprovecho a preguntarte si a la terminal del navegador se puede acceder desde la terminal de Linux mediante las credenciales SSH ¿o eso no tiene nada que ver?.
 
Tienes 2 opciones:

Usar un servicio como DeployHQ
Este servicio "recibe" el evento de git push (a través de un webhook) de Github > DeployHQ > y lo envía al FTP del compartido.
https://www. deployhq.com/blog/how-to-deploy-to-your-ftp-server-with-git-and-deployhq

Utilizar Github Actions
Creas una acción (action) especifico para el deploy apuntando al SSH e iniciando sesión vía FTP. Luego dentro haces sincronización, realizas un git pull en el servidor compartido (banahosting) e incluso ejecutas algún comando (composer)

La otra opción es Git-ftp, pero no lo he usado como para recomendártelo.
 
Perfecto, entonces voy bien orientado 😎
Me fijé y tengo Git en el Hosting.
Aprovecho a preguntarte si a la terminal del navegador se puede acceder desde la terminal de Linux mediante las credenciales SSH ¿o eso no tiene nada que ver?.

Yo uso la terminal propia que tengo en mi notebook (macbook pro), pero cuando uso mi otra notebook uso el Putty para acceder por ssh. y ahi hago todo.

Pd.: en mi hosting hago el "pull" para bajar los archivos, mejor dicho ya que "push" es subir en git y el push hago desde mi macbook.
 
¡¡Wooow gracias!!
Viendo esto me entra una duda, si tengo un archivo que por seguridad deseo no tenerlo en el repositorio, un ejemplo, el archivo .env en el caso de CodeIgniter o supongamos alguno que tenga datos de acceso a la BD, ¿debería subirlo manualmente cada vez que le realizo alguna modificación o también se puede hacer por consola?.
 
¡¡Wooow gracias!!
Viendo esto me entra una duda, si tengo un archivo que por seguridad deseo no tenerlo en el repositorio, un ejemplo, el archivo .env en el caso de CodeIgniter o supongamos alguno que tenga datos de acceso a la BD, ¿debería subirlo manualmente cada vez que le realizo alguna modificación o también se puede hacer por consola?.
lo pones como ignorar nomas, cuando creas tu repositorio, github te da la opcion de tener el gitignore y que vas a "ignorar", ahi colocas el *.env y cada vez que hagas push, no se subira al git, pero cuando la primera vez hagas pull en tu hosting, se descargara todo menos los archivos ignorados (por que no existen en el repositorio de git), entonces por esa unica vez vas a tener que subir manualmente, las siguientes veces solo se iran pisando los archivos que si tienes compartido con git.

En mi caso, el archivo de Settings.php lo tengo ignorado por git, por ende lo subi 1 sola vez al hosting y puse los datos de produccion y en mi localhost lo tengo pero con los datos de desarrollo, cada push que hago no lo sube, pero como es un archivo que muy poco lo modificaria entonces lo hago a mano si hay alguna modificacion que deba hacer (agregar alguna variable global nueva, etc)
 
Te dejo un video al final viene lo de los push y pull a git desde cpanel, que entiendo que es lo que quieres hacer



Por otro lado tienes servicios gratuitos que cuando haces el pull te hacen el publish directamente de tu repositorio, como puede ser Firebase de google o Netify. Si no tienes un trafico fuerte no te hace falta un compartido.

netlify.com

A ver si me explico. Esta web por ejemplo https://carrerasuniversitarias10.com/ coge el contenido de otra web wordpress lo espinea y lo publica en netify, todo esto ocurre cuando hago un pull sobre github. Netify se entere que hay un nuevo pull, y el codigo de github hace el resto de acciones y se despliega en el servidor gratuito de netify

1608324434858.webp


Todo con github , netify y coste "economico" cero.
 
lo pones como ignorar nomas, cuando creas tu repositorio, github te da la opcion de tener el gitignore y que vas a "ignorar", ahi colocas el *.env y cada vez que hagas push, no se subira al git, pero cuando la primera vez hagas pull en tu hosting, se descargara todo menos los archivos ignorados (por que no existen en el repositorio de git), entonces por esa unica vez vas a tener que subir manualmente, las siguientes veces solo se iran pisando los archivos que si tienes compartido con git.

En mi caso, el archivo de Settings.php lo tengo ignorado por git, por ende lo subi 1 sola vez al hosting y puse los datos de produccion y en mi localhost lo tengo pero con los datos de desarrollo, cada push que hago no lo sube, pero como es un archivo que muy poco lo modificaria entonces lo hago a mano si hay alguna modificacion que deba hacer (agregar alguna variable global nueva, etc)
Te dejo un video al final viene lo de los push y pull a git desde cpanel, que entiendo que es lo que quieres hacer



Por otro lado tienes servicios gratuitos que cuando haces el pull te hacen el publish directamente de tu repositorio, como puede ser Firebase de google o Netify. Si no tienes un trafico fuerte no te hace falta un compartido.

netlify.com

A ver si me explico. Esta web por ejemplo https://carrerasuniversitarias10.com/ coge el contenido de otra web wordpress lo espinea y lo publica en netify, todo esto ocurre cuando hago un pull sobre github. Netify se entere que hay un nuevo pull, y el codigo de github hace el resto de acciones y se despliega en el servidor gratuito de netify

Ver el archivo adjunto 414578

Todo con github , netify y coste "economico" cero.


Aclarada mi duda, muchísimas gracias por su ayuda por tenerme paciencia. 😎
 
Atrás
Arriba