Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

API Gateway Manager’s default installation method is by using Docker. The current Docker images are always published on the Docker Hub and are available public. This sections focuses on getting the Gateway Manager up and running using the default settings.

https://hub.docker.com/r/apiida/aagm

For installation in other environments such as OpenShift, please see here:

...

Install on OpenShift (Non Helm)

Start the Containers

...

Docker

...

Create a directory and copy the following docker-compose.yml into this new directory.

Make sure that docker is installed on the system on which you want to install the Gateway Manager.

Please follow the articles if this is not the case.

Docker: https://docs.docker.com/engine/install/

Docker Compose: https://hubdocs.docker.com/rcompose/apiidainstall/aagm

Note

For use in production environments, make sure that you change the passwords and use suited mechanisms like Docker Secrets to set them.

Install using Docker Compose

Create a new folder and create a new file in this folder. Copy the following content into the new file and name it docker-compose.ymlyaml.

Code Block
languageyaml
version: '3'
services:
  db:
    image: mariadb:10.4
    command:
      - --innodb_buffer_pool_size=1G  # Defines the size of the InnoDB buffer pool. The default of 128MB is not sufficient and regularly leads to overflowing.
      - --query_cache_size=512M   # Defines the size of the query cache.
      - --max_allowed_packet=536870912 # Defines the maximum package size. Required for large APIs
    environment:
      - 'MYSQL_ROOT_PASSWORD=327KHJ4aHPRnqW9c'
      - 'MYSQL_DATABASE=aagm'
      - 'MYSQL_USER=aagm_user'
      - 'MYSQL_PASSWORD=ag72iUphcpE9K9hY'
    restart: always
    volumes:
      - aagm-db-vol:/var/lib/mysql
  aagm:
    image: apiida/aagm:latest
    ports:
      - '443:10443'
    environment: 
      - 'NOSTROMO_DB_HOST=db' 
      - 'NOSTROMO_DB_NAME=aagm'
      - 'NOSTROMO_DB_USER=aagm_user'
      - 'NOSTROMO_DB_PASSWORD=ag72iUphcpE9K9hY'
    restart: always
    volumes:
      - aagm-vol:/opt/aagm:rw
    depends_on:
      - db
      - prometheus
      - prometheus-pushgateway
  prometheus:
    image: apiida/aagm-prometheus:v2.49.1
    volumes:
      - aagm-prometheus-vol:/prometheus
  prometheus-pushgateway:
    image: prom/pushgateway:v1.7.0     
volumes:
  aagm-vol: 
  aagm-db-vol:
  aagm-prometheus-vol:
Note

For use in production environments, make sure that you change the passwords and use suited mechanisms like Docker Secrets to set them.

After creating the file, you can pull and start the containers using

Code Block
docker-compose pull

and

Code Block
docker-compose up --detach -d-pull=always

(tick) Installation completed! Register your licence now.

...