Skip to main content

Overview

MeteoStudio (Istudio) is a weather studio service used for generating media reports and managing distribution lists.

Repository

The MeteoStudio repository is hosted on GitLab: Repository: https://git.wthr.ws/meteoweather/meteostudio Clone the repository:
git clone https://git.wthr.ws/meteoweather/meteostudio
cd meteostudio

Deployment

MeteoStudio is deployed via Portainer on Docker Swarm.

Deployment Location

Portainer Stack: media-meteostudio

Service Configuration

The service runs in the media-meteostudio stack with the following configuration:
meteostudio:
  image: registry.docker.devops.arabiaweather.com/meteo-studio:v2025.11.04-0
  #image: registry.docker.devops.arabiaweather.com/meteo-studio:v2025.09-17-0
  #image: registry.docker.devops.arabiaweather.com/meteo-studio:v2025.09-16-0
  #image: registry.docker.devops.arabiaweather.com/meteo-studio:v2025.06-01-0
  command:
    - istudio
  networks:
    - proxy
    - default
  environment:
    - ATHENA_HOST=athenapdf2:8080
    - APP_URL=https://istudio.meteoweather.global
    - AWS_ACCESS_KEY_ID=AKIAUIARR2I4IVDV6QPM 
    - AWS_SECRET_ACCESS_KEY=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 
    - MONGOURL=mongodb://116.203.246.113:27017/meteostudio
    - delme=0
  deploy:
    mode: replicated
    replicas: 1
    resources:
      limits:
        memory: 2048M
    labels:
      - "traefik.port=3000"
      - "traefik.docker.network=proxy"
      - "traefik.frontend.entryPoints=http,https"
      - "traefik.frontend.redirect.entryPoint=http"
      - "traefik.frontend.rule=Host:istudio.meteoweather.global,studio.meteoweather.global"

Deployment Process

To deploy a new version:
  1. Make code changes in the repository
  2. Commit your changes:
    git add .
    git commit -m "Your commit message"
    
  3. Push to the repository:
    git push
    
  4. Tag the release:
    git tag v2025.MM.DD-X
    git push --tags
    
  5. Update the service in Portainer:
    • Navigate to the media-meteostudio stack
    • Update the image field to the new tag (e.g., registry.docker.devops.arabiaweather.com/meteo-studio:v2025.11.04-0)
    • Comment out the old image tag
    • Redeploy the stack

FAQ

How to add or remove emails from distribution lists?

Distribution lists are managed in the codebase. To add or remove emails:
  1. Navigate to views/marine-report-page.ect (or the relevant template file)
  2. Find the list name you need to modify
  3. Add or remove email addresses from the list
  4. Commit, push, tag, and deploy as described above

Example Tickets

Example Commit

See this commit for reference on how to modify distribution lists: Example commit

Where is the service deployed?

The service is deployed in the media-meteostudio stack on Portainer: