Setup Linux
Here the setup for Linux is described. MySpeed can be installed in several ways.
Installation with Docker
Help
You don't know how to install Docker? Then check out this guide
docker run -d -p 5216:5216 -v myspeed:/myspeed/data --restart=unless-stopped --name MySpeed germannewsmaker/myspeed
docker run -d -p 5216:5216 -v myspeed:/myspeed/data --restart=unless-stopped --name MySpeed germannewsmaker/myspeed:development
Automatic installation
bash <(curl -sSL https://install.myspeed.dev)
curl -sSL https://raw.githubusercontent.com/gnmyt/myspeed/development/scripts/install.sh | bash -s -- --beta
Automatic uninstall process
Don't want to use MySpeed anymore? You can easily remove MySpeed. Decide here if you want to keep or delete your data.
Execute these commands carefully
Executing the commands will result in deletion / uninstallation of MySpeed. Please be aware of this.
curl -sSL https://raw.githubusercontent.com/gnmyt/myspeed/development/scripts/uninstall.sh | bash -s -- --keep-data
curl -sSL https://raw.githubusercontent.com/gnmyt/myspeed/development/scripts/uninstall.sh | bash
Manual installation
sudo apt-get install wget curl unzip -y #(1)
# You only need to do this if you don't have NodeJS installed yet
curl -sSL https://deb.nodesource.com/setup_18.x | bash
sudo apt-get install nodejs -y #(2)
mkdir /opt/myspeed && cd /opt/myspeed #(3)
wget $(curl -s https://api.github.com/repos/gnmyt/myspeed/releases/latest | grep browser_download_url | cut -d '"' -f 4) #(4)
unzip MySpeed-*.zip && rm MySpeed-*.zip #(5)
npm install #(6)
NODE_ENV=production node server #(7)
- Here you install all necessary packages to install the project.
- This step installs the latest version of NodeJS.
- Now create the folder where you want to install MySpeed. In this case it is the folder
/opt/myspeed
. - Now install the newest version of MySpeed.
- Now unzip the file you just downloaded (then you can delete it)
- Now install all dependencies.
- Now MySpeed is started. MySpeed is now available on port 5216. If you plan to run MySpeed in the background, see the guide below.
Install MySpeed from the source code
Attention
This process installs the latest development version of MySpeed. Errors may occur.
sudo apt-get install git curl -y #(1)
# You only need to run this if you don't have NodeJS installed yet
curl -sSL https://deb.nodesource.com/setup_18.x | bash
sudo apt-get install nodejs -y #(2)
mkdir /opt/myspeed && cd /opt/myspeed #(3)
git clone https://github.com/gnmyt/myspeed.git . #(4)
npm install #(5)
cd client && npm install && npm run build && cd .. && mv client/build . #(6)
NODE_ENV=production node server #(7)
- here you install all necessary packages to install the project.
- this step installs the latest version of NodeJS.
- now create the folder where you want to install MySpeed. In this case this is the folder
/opt/myspeed
. - clone the MySpeed repository to get access to the code.
- now install all dependencies of the server.
- now compile the interface of MySpeed and move it to the folder where MySpeed can read it.
- now start MySpeed. MySpeed is now accessible on port 5216. If you plan to run MySpeed in the background, see the guide below.
Install MySpeed 24/7
Important
You have used the installation script? Then you don't need to do this step at all.
Installing as a system service is not even that hard. In this case we use systemd
, because it is directly integrated in most Linux distributions.
-
Create a file named
myspeed.service
under/etc/systemd/system
. Here we usenano
nano /etc/systemd/system/myspeed.service
-
Now paste the content of the file.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
[Unit] Description=MySpeed After=network.target [Service] Type=simple ExecStart=/usr/bin/node server Restart=always # \/ It is strongly recommended to create your own user here User=root Environment=NODE_ENV=production # \/ Specify your installation location here WorkingDirectory=/opt/myspeed [Install] WantedBy=multi-user.target
-
Save the file. This varies a bit depending on the editor
CTRL
+X
, thenY
and thenEnter
Press
ESC
, then type:wq
and pressEnter
-
Now reload systemd
systemctl daemon-reload
-
If you want MySpeed to boot at systemd startup, type this command:
systemctl enable myspeed
-
Done! Now you can finally start MySpeed.
systemctl start myspeed
-
Now check the status of MySpeed
systemctl status myspeed