Configuration of App Store
To link the App Store to the Harbor Registry, the src/main/resources/application.properties file must be configured. Adjust the following properties according to your registry URL:
- The container registry hostname, use the Harbor Registry Hostname
registry.host=registry.example.org - The container registry url, use the Harbor Registry URL
registry.url=https://registry.example.org - The container registry project to use for this appstore instance
registry.project=projectName - The container registry api url
registry.api.url=https://registry.example.org/api/v2.0 - The container registry api username
registry.client.user=apiUser - The container registry api password
registry.client.password=password
You need to change registry.example.org to your Harbor Registry Hostname.
Deploy App Store as an SSL/HTTPS Standalone Server
For the App Store to work with all its functionalities, the App Store must be installed on a standalone server with a valid IDS certificate and a valid SSL certificate created for that server with its specific domain name. An SSL certificate can be created by an Internet Certificate Authority or you can contact your company’s network/system administrator.
Docker and Docker-compose are used for the deployment described below. To install Docker, you can use this link. To install Docker-compose, you can use this link.
From here on, it is assumed that you have performed the steps of installing and running the App Store and configuring the App Store as described above according to your settings and configurations.
- After configuring the
application.propertiesfile as described in the previous section, you need to create a Docker image for the App Store. To do this, the following command can be used in the root of your App Store directory:docker build . -t appstoreimage:latestappstoreimage:latestis the name of the Docker image. Replace it with a name of your choice. - Under
deploy/local/docker-compose.ymlof your local App Store repository, replace the App Store Docker image in line 68 with the App Store Docker image that you created in the previous step. In the example given in this documentation, the valueghcr.io/international-data-spaces-association/ids-appstore:mainmust be replaced withappstoreimage:latest, the name of the Docker image created in the first step.65 appstore: 66 container_name: appstore 67 hostname: appstore 68 image: ghcr.io/international-data-spaces-association/ids-appstore:main - Install the IDS certificate in the
src/main/resources/conffolder and update the following values in the config.json file:- Replace
idsc:TEST_DEPLOYMENTwithidsc:PRODUCTIVE_DEPLOYMENT. - Replace
keystore-localhost.p12with your IDS certificate.
- Replace
Other values in the application.properties file must be updated as follows:
configuration.keyStorePassword=password: Replacepasswordwith your IDS certificate password.idscp2.keystore=./src/main/resources/conf/keystore-localhost.p12: Replacekeystore-localhost.p12with the name of your IDS certificate.server.ssl.enabled=true: Replacetruewithfalseto disable the default setting of enabling SSL using the IDS certificate, as it is replaced by the SSL certificate configuration.
-
Place your SSL certificate files in the
deploy/local/SSLfolder. Delete the existingserver.certandserver.keyfiles. Rename your SSL certificate toserver.certand your private key toserver.key. - Run the following docker-compose command:
docker-compose up - Your App Store’s user interface can be accessed via
https://yourAppStoreHostname, whereyourAppStoreHostnameis replaced with your App Store’s domain name. Your App Store’s APIs can be accessed viahttps://yourAppStoreHostname/api. Your App Store’s Swagger UI can be accessed viahttps://yourAppStoreHostname/api/docs. Make sure that you allow outside access to your server if it is running behind a firewall or proxy server.