Designer 10.15 | webMethods Service Development Help | Using the Local Service Development Feature | Setting the Local Development Server
 
Setting the Local Development Server
A local development server can be one of the following server instances:
*On-premise Integration Server
*On-premise Microservices Runtime
*Integration Server running inside a Docker container
*Microservices Runtime running inside a Docker container
Note:
On-premise Integration Server and on-premise Microservices Runtime are referred to as Integration Server and Microservices Runtime respectively in this document, unless specifically stated otherwise.
The local service development feature works with the local development server only.
By default, a new Designer installation includes a single server definition named Default. This server is marked as the default server and is configured to use localhost:5555.
If your Designer installation needs to connect to more Integration Servers, you can configure additional Integration Server instances on the Window > Preferences > Software AG > Integration Servers page. If there are multiple Integration Server instances configured, only one instance will be active at a time. The default Integration Server instance will be treated as the default local development server. However, you can set any of the available local Integration Server instances as the local development server. Perform the following step to set an Integration Server instance as the local development server.
*In Package Navigator view, right-click the Integration Server instance that you want to use as a local development server and select Use as Local Version Control Integration Server
The server icon changes to indicating that it is an active local development server.
Note:
The Use as Local Version Control Integration Server option is available only if the selected Integration Server is connected and is installed in the same installation directory as the Designer instance.
Setting an Integration Server or Microservices Runtime as the Local Development Server
In versions prior to 9.10, Designer used only the Integration Server instance named “default” as the local development server. However, from version 9.10 release, you can set any Integration Server instance as the local development server as long as the selected instance is installed in the same installation directory as the Designer instance you are using.
Using Integration Server or Microservices Runtime Running in a Docker Container as a Local Development Server
To use Integration Server or Microservices Runtime running inside a Docker container as local development server, ensure that the following prerequisites are met:
*Docker and Designer reside on the same host.
*Create or pull docker images from the Docker registry. The Microservices Runtime image is available in Container Registry https://containers.softwareag.com/. Ensure that the MSR image from the registry has the functionality you need.
*Mount the corresponding host directory of local Git repository.
Following is a sample for the startup command:
docker run -i -t -d \
--name $[container_name] \
-v $[container_named_volume]: [Install_Dir]/IntegrationServer/packages \
-v [host_git_project_location]:/[container_git_project_location]
-p [host_primary_port:]primary_port \
[image_name] \
/bin/bash
Where...
Specify...
container_name
Name of the Integration Server or Microservices Runtime in the Docker for running the Integration Server orMicroservices Runtime image. For example, IS_Default.
container_named_volume
Named volume of the Docker.
Install_Dir
Installation directory of Integration Server or Microservices Runtime.
host_git_project_location
Specifies the Git project location.
host_primary_port
A port on the container host machine that you want to explicitly map to an exposed port on the Integration Server or Microservices Runtime, specifically the primary port.
primary_port
Port number for the primary port on Integration Server orMicroservices Runtime.
image_name
Name of Integration Server or Microservices Runtime image. For example, is:microPkg.
You also have the option to configure multiple git repositories as:
-v [host_git_project_location1]:/[container_git_project_location1]
-v [host_git_project_location2]:/[container_git_project_location2]
For example, in terminal, enter the following command:
docker run --name <name> -p 5558:5555 -d -v C:/Users/foo/git/repo1:/opt/git/repo1 -v C:/Users/foo/git/repo2:/opt/git/repo2 -v <volume name>:/opt/softwareag/IntegrationServer/packages sagcr.azurecr.io/webmethods-microservicesruntime:10.15
In Designer, you should add C:/Users/foo/git/repo1 Container Path:/opt/git/repo1 and C:/Users/foo/git/repo2 Container Path:/opt/git/repo2 in Host Path.
Alternatively, you can use individual repositories as one volume by mounting the parent folder. For example,
docker run --name <name> -p 5558:5555 -d -v C:/Users/foo/git:/opt/git -v <volume name>:/opt/softwareag/IntegrationServer/packages sagcr.azurecr.io/webmethods-microservicesruntime:10.15"
Note:
The web services functionality can be excluded from a Docker image created for Microservices Runtime. If a Microservices Runtime running inside of a Docker container does not have any web services support, web service descriptors cannot be created on theMicroservices Runtime. Any attempts to do so result in a service exception. For more information about excluding web services functionality from a Docker image created for Microservices Runtime, see webMethods Integration Server Administrator’s Guide.
In Designer, you can mount a file volume into the Docker container and use version control in Package Navigator.
To mount a file volume in Local Service Development, perform the following:
1. In Designer, select Window > Preferences > Software AG > Service Development > Local Service Development, select Enable local service development in containerized Integration Server or Microservices Runtime.
2. To set the docker volume and port details, click Add.
The Add New Volume dialog box appears.
3. Enter Host Path, Container Path, and click OK.
4. Enter the port number in Port.
5. Click Apply.
After configuring the volume, update the port for the connected server. For more information, see Editing Server Definitions
Note:
If you have configured multiple git repositories, ensure that the volume details are also added.
You can set up local service development by creating a new project or importing a project into your local workspace.
To create a new project:
1. In Designer, right-click a newly created package and select Create Local Service Development Project. For more information on creating a package, see Creating a Package.
2. In the Local Service Development dialog box that appears, click OK to proceed.
The Repository dialog box displays the list of volumes mounted.
3. Select the mapped repository (Host Path and Container Path).
4. Enter your path within your repository (optional).
5. Click OK.
6. In the Share Project wizard dialog box that appears, select the project and location.
7. Click Finish.
In the Package Navigator view, you can see the repository link created for the project.