Installing Orchestrator using Docker
1. Prerequisites and requirements
Hardware requirements are minimal: 2 core CPU, 4 GB RAM
Software:
- Operating System: Any OS with Docker support
- Docker Compose: version 2.0+
- Account for
nexus.primo-rpa.ru:8000
Network configuration:
- Open port:
5080(Orchestrator UI) - the port can be changed if 5080 is occupied - Outgoing access to the image registry should be allowed
2. Preliminary setup
-
Download the file
docker-compose.yml -
Configure parameters in the file in 2 places:
# Specify the required image versions image: nexus.primo-rpa.ru:8000/orchestrator:1.25.11 # 1. Change the port if necessary in the *ports* section: ports: - '5080:80' # Replace 5080 with the necessary port # 2. Specify the correct base-url with the same port.: base-url: &base-url http://{server ip}:5080 # Use the same port as above
3. Installing Docker
For Docker installation instructions, see the official documentation: - Docker for Ubuntu
# Updating packages
sudo apt-get update
sudo apt-get install -y ca-certificates curl
# Adding official Docker repository
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Installing Docker
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginChecking the installation:
docker --version
docker compose version
sudo systemctl status docker4. Launching Orchestrator
All commands (except docker login) must be run with root privileges or via sudo
-
Login to Nexus via docker login:
docker login nexus.primo-rpa.ru:8000 -
Prepare the directory:
sudo mkdir -p /opt/Docker # Copy the prepared docker-compose.yml to /opt/Docker -
Start containers:
cd /opt/Docker sudo docker compose up -d -
Check the status:
sudo docker ps # All containers must be in the "Up" status
5. Checking performance
After running the containers, open the following in your browser:
- Orchestrator UI:
http://your_server_ip:5080/
Check via command line:
curl -I http://your_server_ip:5080/
6. Configuring RDP2
Primo.Orchestrator.RDP2 service is not installed within Docker, so it will need to be deployed separately according to the instructions:
In the RDP2 configuration, specify the IP and port of the server on which Orchestrator is deployed (parameters EnabledOrigins, BaseUrl):
"EnabledOrigins": [
"http://10.0.0.18:5080"
],
"Orchestrator": {
"BaseUrl": "http://10.0.0.18:5080"
}Orchestrator in a Docker container runs over HTTP. Make sure that the EnabledOrigins and BaseUrl parameters in the RDP2 settings specify the http:// protocol, not https://.
7. Updating the version
-
Stop the current version:
cd /opt/Docker sudo docker compose down -
Update image tags in
docker-compose.yml -
Start the new version:
sudo docker compose up -d -
Clean up old images:
sudo docker image prune