Skip to content

VPS - Configuración

Arquitectura

Estos comandos fueron pensados para configurar una instancia de máquina virtual con arquitectura AMD64 (Arquitecturas de x64 bits). Tener en cuenta cambios de comandos y configuraciones de instalación para arquitecturas ARM

ConfiguraciónValor
Sistema Operativo
ubuntu Ubuntu Server 24.04LTS

La instancia fue configurada con un Ubuntu server 24.04LTS.

Dentro de la misma, se realiza la utilización de paquetes y herramientas como:

  • git
  • Docker
  • MongoDb
  • Nginx

En esta sección veremos algunas de las herramientas más importantes:

Docker

Para un CI/CD más rápido y la capacidad de realizar actualizaciones en caliente. Se optó por la posibilidad de utilizar imágenes de Docker con las aplicaciones previamente construidas para producción. Esto permite que el flujo de CI/CD dentro de la instancia solamente se base en actualizar las imágenes y reemplazarlas con las nuevas imágenes que contienen las funcionalidades mejoradas.

Instalación

Terminal window
sudo apt update
# sudo apt upgrade # Opt - I prefer not at this time. (Recommended).
sudo apt install -y apt-transport-https curl
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose docker-compose-plugin
# Verify docker service status
sudo systemctl status docker
sudo usermod -aG docker ${USER}

Variables de entorno

Estas variables fueron instanciadas directamente en la máquina virtual, para luego ser utilizada o formateada según sea correspondiente en los contenedores de Docker.

Cada una de las variables colocadas en esta documentación son utilizadas dentro del ecosistema de CI/CD del producto Checkout Dinámico (v2).

  1. Ejecutar el siguiente comando para acceder a la configuración de entorno de la instancia
Terminal window
nano ~/.bashrc

Una vez dentro, procederemos a ir al final del archivo y agregar las siguientes lineas

Terminal window
export DOCKER_USERNAME='<docker_username>'
export DOCKER_PASSWORD='<docker_password>'
export MONGO_USERNAME='<mongo_username>'
export MONGO_PASSWORD='<mongo_password>'
export MONGO_HOST='localhost' # In compose is 'mongodb'
export MONGO_PORT='<mongo_port>'
export MONGO_DATABASE_NAME='<mongo_database_name>'
export AWS_REGION='<aws_region>'
export AWS_ACCESS_KEY='<aws_access_key>'
export AWS_SECRET_ACCESS_KEY='<aws_secret_access_key>'
export AWS_S3_BUCKET_NAME='helipagos'
export HELIPAGOS_URL='https://checkoutsandbox-v2.helipagos.com'
export DATABASE_URL='mongodb://<mongo_username>:<mongo_password>@mongodb:27017/<mongo_database_name>'
export ENCRYPTED_PWD='<encrypted_pwd>'

Reemplazar los valores por los datos correspondientes.

En el caso de requerir variables de producción. Por favor, coordinar con su gerente de área correspondiente para la solicitud.

Para aplicar los cambios de variables de entorno, una vez guardado el archivo se deberá de ejecutar el siguiente comando:

Terminal window
source ~/.bashrc

Y listo, una vez ejecutado el comando tendremos realizado las variables de entorno correctamente.