Commit 69e945c0 authored by Noel Alonso's avatar Noel Alonso
Browse files

Merge branch 'dev' into 'master'

Dev

See merge request redmic-project/server/template/functional-unit-template!3
parents 705f95ba c23cc59c
Loading
Loading
Loading
Loading
+0 −8
Original line number Diff line number Diff line
@@ -25,17 +25,9 @@ variables:
  STACK: template

.deploy-commands:
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      SPRING_PROFILES_ACTIVE=${SPRING_PROFILES_ACTIVE} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    url: https://${PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME}/commands

.deploy-view:
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      SPRING_PROFILES_ACTIVE=${SPRING_PROFILES_ACTIVE} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    url: https://${PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME}/view
+13 −3
Original line number Diff line number Diff line
ARG PARENT_IMAGE_NAME
ARG PARENT_IMAGE_TAG
ARG PARENT_IMAGE_NAME=registry.gitlab.com/redmic-project/docker/redmic-server
ARG PARENT_IMAGE_TAG=latest

FROM ${PARENT_IMAGE_NAME}:${PARENT_IMAGE_TAG}

ARG PORT=8080

COPY /*/dist/*.jar ./

EXPOSE ${COMMANDS_PORT} ${VIEW_PORT}
ARG PORT=8080
EXPOSE ${PORT}

HEALTHCHECK \
	--interval=30s \
	--timeout=15s \
	--start-period=3m \
	--retries=10 \
CMD wget --spider -q http://localhost:${PORT}/api/${UNIT_NAME}/${MICROSERVICE_PATH}/actuator/health
+5 −3
Original line number Diff line number Diff line
@@ -24,14 +24,16 @@ Este proyecto sirve de guía para la creación de una nueva unidad funcional (mi

4. Revisar el resto de ficheros del proyecto, remplazando `template` por el nombre adecuado (incluyendo la primera línea de este mismo fichero).

5. Modificar los puertos de los microservicios, reemplazando `port1` y `port2` en el fichero `.env` y definirlos respectivamente en el fichero `src/main/resources/application.properties` de *commands* y *view*.
5. Modificar, si se desea, el puerto por defecto de los microservicios, reemplazando `8080` en los ficheros `Dockerfile`, `deploy/.env` y `src/main/resources/application.properties`.

6. En los ficheros `docker-compose.*.yml`, revisar las redes a las que pertenecerán, los volúmenes a añadir, etc. Además, se puede definir la memoria disponible para cada microservicio, usando la variable de entorno *JAVA_OPTS* (por ejemplo, `JAVA_OPTS=-Xmx512m -Xss512m`).

7. Configurar en el fichero `pom.xml` el *spring-boot-starter* adecuado para cada microservicio y añadir las dependencias deseadas.

8. En el fichero `.gitlab-ci.yml`, modificar detalles de despliegue según sea necesario, como el valor de `STACK` o los bloques `script`, donde se pasan las variables de entorno hacia los servicios.
8. En el fichero Dockerfile, modificar PARENT_IMAGE_NAME para establecer la del proyecto y que sirva de referencia.

9. Actualizar la tabla inicial de estado, eliminar estas instrucciones y documentar adecuadamente.
9. En el fichero `.gitlab-ci.yml`, modificar detalles de despliegue según sea necesario, como el valor de `STACK`. Si se desea añadir variables de entorno al despliegue, se deben añadir como variables del proyecto (gitlab) con el prefijo `DD_`.

10. Actualizar la tabla inicial de estado, eliminar estas instrucciones y documentar adecuadamente.

* Para más información acceder a [Guía para desarrollar una unidad funcional](https://gitlab.com/redmic-project/server/template/functional-unit-template/wikis/home)
+1 −2
Original line number Diff line number Diff line
UNIT_NAME=template
COMMANDS_PORT=port1
VIEW_PORT=port2
PORT=8080
+5 −9
Original line number Diff line number Diff line
@@ -2,9 +2,11 @@ version: '3.5'

services:
  template-commands:
    image: ${IMAGE_NAME}:${IMAGE_TAG:-latest}
    image: ${IMAGE_NAME:-registry.gitlab.com/redmic-project/server/template/functional-unit-template}:${IMAGE_TAG:-latest}
    environment:
      - COMMANDS_PORT
      - UNIT_NAME
      - MICROSERVICE_PATH=commands
      - PORT
      - SPRING_PROFILES_ACTIVE
      - MICROSERVICE_NAME=${UNIT_NAME}-commands
      - SPRING_KAFKA_CLIENT-ID={{.Service.Name}}-{{.Task.Slot}}
@@ -16,19 +18,13 @@ services:
      - traefik-net
    volumes:
      - commands-vol:/tmp/kafka
    healthcheck:
      test: wget --spider -q http://localhost:${COMMANDS_PORT}/api/${UNIT_NAME}/commands/actuator/health
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 2m
    deploy:
      mode: replicated
      replicas: 1
      labels:
        traefik.frontend.rule: Host:${PUBLIC_HOSTNAME};PathPrefix:/api/${UNIT_NAME}/commands
        traefik.backend: ${UNIT_NAME}-commands
        traefik.port: '${COMMANDS_PORT}'
        traefik.port: '${PORT}'
      restart_policy:
        delay: 10s
        window: 3m
Loading