Anthony De La Rosa @A.DeLarosa / 7:00 PM EDT. October 04, 2022.
Are you in your DevOps journey? Are you confused about the tools that are good for you to use? In this series, I will be sharing with you my top 5 basic tools that will help you become an effective DevOps Engineer.
In today's world of DevOps, this fast-paced environment is vital to the success of a business. The challenges of development and operations have never been greater. This can be difficult and confusing due to the rapid pace at which things are changing, but you don't have to worry if you are looking to become a DevOps Engineer. There is a wide range of tools and skills that you can use in the most effective way possible so that you can hit the ground running when being hired as an entry-level employee for IT professionals or software developers who enjoy getting their hands dirty.
Nothing gets a woman’s attention more than a nice curl command line tool that is 😏curl which stands for client URL can be found in most Linux distributions and Mac but you can also install it in Windows. A curl is a crucial tool used for data transfers on all types of protocols and it can do so many things like it can do a POST request, a GET request, a PUT request, can send a JSON object, can authenticate, can store responses etc … but the most useful thing it can do is connection troubleshooting. Curl works the same way as if you were to open your web browser and type www.google.ca only you are typing $ curl www.google.ca
On the Linux distribution, it renders the source code of the website which is a bit useless for a website like www.google.ca but can be very useful when troubleshooting network issues. Curl becomes extremely useful when working inside a Linux server because unlike Windows or Mac, you don’t have a GUI (graphical user interface) and thus can’t just open Chrome/Safari/Firefox and Google Homepage.
Curl can help you troubleshoot web applications inside of your environment like testing if Apache is responding with the expected content or if the application you are running is running on the correct port. Localhost or 127.0.0.1 is your server itself and is often referred to as localhost. Curl and localhost go together like cheap umbrellas and Shoppers Drug Mart, like smelly bathrooms and gasoline stores, like late-night partying and hangovers 😄 and it can save you hours of troubleshooting using them together because it answers a lot of questions. For example, let’s say you are having issues with Apache/NGINX then you can simply use curl and localhost
This simple command tells us a few things like a) Apache is running, b) we can see what Apache is rendering and confirm if that’s what is expected and c) it tells us that Apache is listening on port 80. The curl command allows you to pass in a port the same way as if you were typing it in the browser so if you had a Docker container or an application running on port 5000, the curl command can be used to test if it works.
It’s important to note that curl localhost by default assumes you are using HTTP or port 80 to request unless otherwise. The above example requests port 5000 but the default is always 80. For example, type $ curl www.google.caand see the response, then type $ curl www.google.ca:80 and you should see the identical response. They are identical because by default curl makes requests against port 80.
A lot of websites are useless to render using curl but the following website can save you a lot of work in figuring out a whitelist IP issue. For example, how would you determine your public IP from the CLIdetermine public IP? 🤔Remember, you don’t have a GUI to open a web browser, so how do you find your public IP?
A curl is an incredible tool that you should adopt and use daily. This tool alone can make you such a productive engineer.
If you're ready to launch your new career in DevOps engineering, you've come to the right place. BusyQA will help you learn everything you need to know about DevOps Engineering and its tools. Our courses are easy, affordable, designed to teach you exactly what you need, and delivered in online and in-class formats. You can get started with our software testing course which covers the fundamentals of GIT, Jenkins, Docker, Kubernetes, Ansible, Terraform and cloud. Not only will you learn what you need to succeed, but you could be eligible to obtain hands-on experience with our in-house paid co-op (not guaranteed), which will help you blow the competition away. To land your dream job, click here to see our next schedule.