Versions Compared

Key

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

...

Code Block
docker pull docker.repository.sca.accenture.com/docker/saga-server:1.3.2.1
3-SNAPSHOT-javacio17-base //OR
docker pull docker.repository.sca.accenture.com/docker/saga-server:1.3.2.13-SNAPSHOT-tensor-javacio17-base


And from then you can configure it and use it as you need, however there are some things you need to know before pulling and running this docker image:

  1. If it is your first time pulling the images, you will need to login with docker to our artifactory, otherwise, you will not be able to pull the image.

    Code Block
    docker login docker.repository.sca.accenture.com

    Then, as said before, you must enter your artifactory credentials.

  2. In order to run this image you need to have an Elasticsearch running and set the config for SAGA to point to that Elasticsearch.
  3. Now, this image has an entrypoint, which makes it executable from the start, so, when you run the image, it will try to override some configurations and start SAGA, so now, you do not need to enter the container and manually start the server.
  4. This same entrypoint script accepts and override 5 different environmental variables in order to configure SAGA server at runtime, these are the following:
    1. SAGA_CONFIG : this JSON-like string contains all the config to overwrite the default one that comes with the image. It must be a one liner string due to environmental limitations when using docker.
      For example:

      This is a fragment of the config for SAGA to run. 

      Code Block
      collapsetrue
      {
        "config": {
           "apiPort": 8080,
          "secureApiPort": 443,
          "host": "0.0.0.0",
      	    "allow-domains": "localhost",
      	 "serverTimeout": 30000,
      	    "javalinPayloadSizemaxRequestPayloadSize": 100000001000000,
            "securitycors": {
            "enableallow_origins": false [
              "http://localhost:8080",
            "encryptionKeyFile" : "./bin/saga.ek"  "https://localhost",
              "https://login.microsoftonline.com"
            ],
            "inactiveIntervalallow_credentials": 600"true",
            "usersallow_methods": [{"*"],
              "usernameallow_headers": ["admin*"],
              "passwordexpose_headers": ["password*",]
          },
          "rolessecurity": "admin"
      {
            "enable": false,
            "encryptionKeyFile"  }]: "./bin/saga.ek",
          }  "inactiveInterval": 600,
            "providersdefaultRole": ["admin",
            "users": [{
              "nameusername": "filesystem-provideradmin",
              "typepassword": "FileSystemnotpassword",
              "baseDirroles": "./configadmin"
            }],
            {
              "name"type": "saga-providernone",
      
              "typeopenid": "Elastic",{
              "nodeUrlsserverURL": ["http://localhost:92008080"],
              "timestampclientId": "updatedAtclientId",
              "indexNamediscoveryURI": "saga"discoveryURI"
            }
          },
          "ssl": {
            "encryptionKeyFileenable": false,
            "keyStore": "./bin/saga.ekjks",
            "keyStorePassword": "encrypted:KCe8RrPQ8MV3po8NqHo0G7q7sa6T6yzf1JrTQ5VD0uty0elmrqRuybaAmrEHJ37d"
          },
          "authenticationlibraryJars": "none"[
            "./lib"
          ],
          "exportSettings" : {
            "timeoutmaxSize" : 90,40,
            "batchSize" : 5000
          },
          "excluderestHandlers": [],
          "models": [],
           "updatedAtuiHandlers": [],
          "providers": [
           "createdAt" {
              ]
      "name": "filesystem-provider",
              } "type": "FileSystem",
          ],
          "solutionsbaseDir": [ "./config"
            },
            {
              "displayname": "Sagasaga-provider",
              "elasticSearchtype": {
        "Elastic",
              "nodeUrls": ["http://localhost:9200"],
              "timestamp": "updatedAt",
              "indexName": "saga",
                "encryptionKeyFile" : "./bin/saga.ek",
                "authentication": "none",
              "caFilePath": "",
              "timeout": 90,
                "delay": 5,
                "retries": 3,
              "exclude": [ }]
            }
          ],
      
          "gpt3": {
            "key": "",
            "openAIHost": "https://api.openai.com",
            "openAIAPIVersion": "v1"
          }
        }
      }

      And this is in the one-liner style that the SAGA_CONFIG environmental variable accepts:

      Code Block
      collapsetrue
      {"config":{"apiPort":8080,"secureApiPort":443,"host":"0.0.0.0","allow-domains": "localhost","serverTimeout": 30000,"javalinPayloadSize": 1000000030000,"maxRequestPayloadSize":1000000,"cors":{"allow_origins":["http://localhost:8080","https://localhost","https://login.microsoftonline.com"],"allow_credentials":"true","allow_methods":["*"],"allow_headers":["*"],"expose_headers":["*"]},"security":{"enable":false,"encryptionKeyFile":"./bin/saga.ek","inactiveInterval":600,"defaultRole":"admin","users":[{"username":"admin","password":"passwordnotpassword","roles":"admin"}]},"type":"none","providersopenid":[{"nameserverURL":"filesystem-providerhttp://localhost:8080","typeclientId":"FileSystemclientId","baseDirdiscoveryURI":"./configdiscoveryURI"}},"ssl":{"name"enable":false,"keyStore":"saga-provider./bin/saga.jks","typekeyStorePassword":"Elasticencrypted:KCe8RrPQ8MV3po8NqHo0G7q7sa6T6yzf1JrTQ5VD0uty0elmrqRuybaAmrEHJ37d"},"nodeUrlslibraryJars":["http://localhost:9200./lib"],"timestampexportSettings":{"updatedAtmaxSize":40,"indexNamebatchSize":5000},"sagarestHandlers":[],"encryptionKeyFilemodels":"./bin/saga.ek","authentication":"none","timeout":90,"exclude":["updatedAt","createdAt"]}],"solutions":[{"display":"Saga","elasticSearch":{[],"uiHandlers":[],"providers":[{"name":"filesystem-provider","type":"FileSystem","baseDir":"./config"},{"name":"saga-provider","type":"Elastic","nodeUrls":["http://localhost:9200"],"timestamp":"updatedAt","indexName":"saga","encryptionKeyFile":"./bin/saga.ek","authentication":"none","caFilePath":"","timeout":90,"delay":5,"retries":3,"exclude":[]}}]],"gpt3":{"key":"","openAIHost":"https://api.openai.com","openAIAPIVersion":"v1"}}}
      Note

      This SAGA_CONFIG is temporal, we needed a way to configure environmental variables quickly.
      In the future, all the configurations will have their own environmental variable.

    2. JAVA_INITIAL_MEMORY : The amount of initial memory Saga will start with. Default is '6g'.
    3. JAVA_MAX_MEMORY : 'The amount of initial memory Saga will start with. Default is '10g'.
    4. JAVA_META_MEMORY : The amount of initial memory Saga will start with. Default is '512m'.
    5. JAVA_MAX_META_MEMORY : The amount of initial memory Saga will start with. Default is '1024m'.

      Info

      All these values can be marked as ‘g' for GB, ‘m' for MB and ‘k' for KB.
      So, '6g' is six gigabytes and '512m' are in megabytes.
      Also when assigning the values exclude the quotes as they are just to demonstrate they are strings.

...

Code Block
docker pull docker.repository.sca.accenture.com/docker/saga-python-bridge:1.3.2.13-SNAPSHOT-ubuntu22.04cio-base

Content by Label
showLabelsfalse
max5
spacessaga131
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel in ("docker","containers") and type = "page" and space = "saga131"
labelsdocker containers

...