The best way to install and upgrade FMZ docker on Linux VPS
Tags: docker, linux, trading, fmzquant
Published: 2024-06-13 07:34:30

## Note
- "One-click Rent a docker VPS" is a expensive way of running FMZ docker, we usually don't recommend it, it designed mainly for new users to get familiar with our platform.
- One docker can run multiple robots.
- A VPS server can run multiple dockers, but generally not necessary.
- If prompted that Python cannot be found, it needs to be installed and restarted on the machine that running the docker.
## VPS or cloud server recommendation
AWS, Google cloud, Digital Ocean or Microsoft Azure, any major cloud computing will be fine, as long as the connection is stable and reliable. so we suggest only using these big brand.

As for the cloud computing configuration, the minimal plan will perfectly done the job. our docker system are very streamlined and effective. the whole docker system is only few MB.

For example, a cloud computer (VPS) with 2 Core CPU, CentOS operation system, 2GB RAM and 25GB hard drive will be enough for the docker to run smoothly. The major cloud computing service provider such as AWS has a monthly payment plan for this configuration, only cost $10 us dollar per month. others such as Google cloud even are free for using one year.

## Cloud computer Linux installation steps
Before buying the VPS service, choose the cloud computer location where is the nearest location to the exchange that you want to trade on. Next, choose the CentOS operation system (Ubuntu, Microsoft or other Redhat operation system all works fine, this article is using CentOS as a demonstrations).

For using your local computer to Log in to the VPS computer. Windows OS recommends the Xshell client, MacOS can just use its own terminal.

In MacOS terminal, run: ssh -l root yourVPSserverIPaddress, then follow the prompt type in your VPS server password.

Download the FMZ docker, click on https://www.fmz.com/m/add-node to copy the link of the docker that matches your system version.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p3yzonr21xjs0nae38my.png)

Next, login your VPS server, in this article, we use CentOS as example.

Enter the following commands:
```
wget https://www.fmz.com/dist/robot_linux_amd64.tar.gz
```
to download the FMZ docker system. If it show that wget doesn't exist, run yum install wget -y to install wget. other Linux distribution have different commands (Ubuntu uses Apt-get and so on).

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8nnsd14zrgosx4tayzqh.png)

after download the docker system, run:
```
tar -xzvf robot_linux_amd64.tar.gz
```
to Unzip the file (when typing to the robot word, you can press the TAB key to automatically complete the path)

Let's test the FMZ docker running, run:
```
cd / # switch to the root path

./robot -s node.fmz.com/xxxxxx -p yourFMZpassword xxxxxx # The number string represented by xxxxxx is different for each user. Find it at https://www.fmz.com/m/add-node. "yourFMZpassword" represents your FMZ website login password
```
If you see prompt is as follow:
```
2020/06/02 05:04:10 Login OK, SID: 62086, PID: 7226, Name: host.localdomain
```
It means that the FMZ docker is running. if you encounter permission problems, run:
```
chmod +x robot
```
At this time, the FMZ docker runs in the foreground. When closes the SSH connection, it will disconnect. therefore, we need it running on the background, run:
```
nohup ./robot -s node.fmz.com/xxxxxx -p yourFMZpassword &
```
In this way, the FMZ docker will running on the backgroup of your VPS server, you don't need SSH connection to the server all the time.

Also, on FMZ.COM website, if you delete the docker from the docker page. the VPS server's docker will also be delete too.

## FMZ docker upgrade steps
FMZ docker generally do not need to upgrade. If you encounter new exchanges, bug fixes, or the docker version too old situations, you can upgrade according to the following steps:

Log in to the directory where the docker is located (if it has not been changed, it is generally the default directory after SSH login) execute ls command to view the file

You can see logs robot robot_linux_amd64.tar.gz, where logs is the log folder, robot is the executor of the docker, and robot_linux_amd64.tar.gz is the original compressed package.

Run rm -rf robot* will delete the old robot program and compressed file package at the same time, keeping the log

Run wget https://www.fmz.com/dist/robot_linux_amd64.tar.gz to download the newest version of FMZ docker

Run tar -xzvf robot_linux_amd64.tar.gz to decompress

Run nohup ./robot -s node.fmz.com/xxxxxx -p yourFMZpassword & to run it in the background, for rnode.fmz.com/xxxxxx part, you can find it at https://www.fmz.com/m/add-node

The advantage of this way of upgrade is that the logs are retained, and the robots run by the old docker will not stop (already loaded and running in memory). To upgrade the docker of a robot, only need stop the robot, replace the docker in the parameter interface (the latest docker id is the largest) and restart.

If the old docker no longer runs any robots, just delete it directly on the https://www.fmz.com/m/nodes page.

From: https://blog.mathquant.com/2020/06/03/the-best-way-to-install-and-upgrade-fmz-docker-on-linux-vps.html