# Microservicio st-microservice-operators Permite la gestión de operadores. Para realizar el despliegue se deben seguir las siguientes indicaciones: ## DDL En el archivo ***resources/database/ddl/st-microservice-operators.sql*** se encuentra el script para crear el DDL que necesita el microservicio. Se debe descargar y ejecutar el script: ```sh $ psql -h -p -U -d -f st-microservice-operators.sql ``` Por ejemplo: ```sh $ psql -h localhost -p 5432 -U postgres -d sistema-transicion -f st-microservice-operators.sql ``` ## Configurar propiedades En el archivo ***st-microservice-operators.yml*** se encuentran las propiedades de configuración del microservicio. Se pueden modificar las siguientes propiedades: ### URL Servidor Eureka Si se requiere cambiar la url del servidor de descubrimiento eureka, se debe modificar la siguiente propiedad: ```yaml eureka: client: serviceUrl: defaultZone: http://st-eureka-server:8762/eureka ``` ### Conexión base de datos Si se requiere cambiar las credenciales de conexión a la base de datos, se deben modificar las siguientes propiedades: ```yaml datasource: url: jdbc:postgresql://192.168.0.3:5432/sistema-transicion username: postgres password: 123456 ``` ## Clonar repositorio Se debe clonar el repositorio [**st-microservice-operators**](https://github.com/SwissTierrasColombia/st-microservice-operators) almacenado en github y posteriormente generar el jar del proyecto a través de maven. ```sh $ git clone https://github.com/SwissTierrasColombia/st-microservice-operators.git $ cd st-microservice-operators && git checkout master $ mvn clean package -DskipTests ``` ## Crear imagen docker Se debe crear la imagen docker a partir del archivo Dockerfile que se encuentra en el repositorio, esta imagen requiere que se le pasen los siguientes argumentos: - **XMX**: Límite en RAM que el jar utilizará. - **PROFILE**: Perfil o ambiente en el cual se ejecutará el jar. En producción se debe usar el perfil production. - **CLOUD_CONFIG**: Url del servidor de configuración. ```sh $ docker build -t st-microservice-operators:lynx --build-arg XMX= --build-arg PROFILE= --build-arg CLOUD_CONFIG= . ``` Por ejemplo: ```sh $ docker build -t st-microservice-operators:lynx --build-arg XMX=1024m --build-arg PROFILE=production --build-arg CLOUD_CONFIG=http://st-config-server:8890 . ``` ## Ejecutar el contenedor Se debe ejecutar el contenedor a partir de la imagen creada asignando un límite de memoria RAM y la red docker previamente creada. ```sh $ docker run -P -t --network -m -d st-microservice-operators:lynx ``` Por ejemplo: ```sh $ docker run -P -t --network st -m 500M -d st-microservice-operators:lynx ```