Application Deployment on Debian
Hello everyone,
I'm quickly explaining my "problem". I need to deploy applications or software on Debian, but the issue is that I am not at all comfortable with Linux... For example, I know that on Windows, .msi files allow deploying programs of our choice when a user logs into our server. I have consulted various websites and forums to do the same on Debian, but I'm out of ideas... Thank you in advance for your answers :)
I'm quickly explaining my "problem". I need to deploy applications or software on Debian, but the issue is that I am not at all comfortable with Linux... For example, I know that on Windows, .msi files allow deploying programs of our choice when a user logs into our server. I have consulted various websites and forums to do the same on Debian, but I'm out of ideas... Thank you in advance for your answers :)
3 answers
-
Hello and thank you for your response ^^
It is true that Linux uses "packages" to install software, etc...
But the solution you proposed will help me install my programs on my server and not on other machines connected to the network?
If that's the case, I want to basically install my applications on a remote machine from my Debian server. This is something I have been looking for for a while =p
After that, your solution does shed a lot of light on "how to install a program on Linux" because I knew nothing about it and I thank you :)
Then, if you have a solution for installing my apps remotely, I would be interested as well.
Best regards -
It's extremely simple: on Linux, we go through a package manager, which is a kind of catalog of software and libraries available in the form of packages.
On Debian, this corresponds to ".deb" files (Debian packages), usually obtained from Debian repositories (referenced in the /etc/apt/sources.list file, which already contains the official repositories).
Then, to search for, install, update, or uninstall software (or more generally your entire Linux), you just need to use the appropriate apt commands. Note that apt is capable of detecting the dependencies (the packages) necessary for the proper functioning of the software you want to install and will install them in cascade if they are not already present on your system.
All that's left is for you to discover the relevant commands and the classic apt operations, which are referenced and described here:
https://www.mistra.fr/tutoriel-linux-apt.html
Good luck -
But the solution you're proposing will help me install my programs on my server and not on other machines connected to the network?
Yes.
If that's the case, I would like to install my applications on a remote machine from my Debian server.
What you can do is connect to a client machine from this server, assuming it is running Linux, and execute the command on the remote machine via ssh.
Indeed, the ssh command allows you to launch a secure terminal on a remote machine (and thus run commands on that machine). This requires that the remote machine has an ssh server deployed that you can connect to (in terms of IP connectivity, port, user profile, and password). For example, if you want to connect as toto to the machine tata.titi.fr:
ssh toto@tata.titi.fr
It is possible to use an IP instead of a FQDN, and you can even embed a command as a parameter of ssh.
Example:
ssh toto@11.22.33.44 sudo aptitude update
To automate the connection, you can consider using an ssh key. It is also necessary for toto to be a sudoer and for your script to be set up to enter the password forsudo
.
If you wish to trigger the same command on multiple machines, you can look into parallel-ssh (pssh for the insiders).
Good luck