How Do You Install Varnish on Debian/Ubuntu Linux?

Problem scenario
You want to install Varnish on a Debian/Ubuntu Linux server.  How do you do this?

Solution
Run these commands:

sudo apt-get -y update

sudo apt-get -y install gcc python-docutils pkg-config libreadline-dev libncurses5-dev libpcre3-dev #*

curl http://varnish-cache.org/_downloads/varnish-6.0.0.tgz /tmp/varnish-6.0.0.tgz

sudo cp /tmp/varnish-6.0.0.tgz /opt/
cd /opt
sudo tar xvzf varnish-6.0.0.tgz
cd varnish-6.0.0
sudo ./configure
sudo make
sudo make install
varnishd -V

* This 

How Do You Create Your Own Dockerfile to Create a Flask Application?

Problem scenario
You want to use Flask inside a Docker container.  You want to build your own image for the Docker container.  How do you create your own Dockerfile to create a Flask application?

Solution
Prerequisite

Install Docker.  See this posting if you need directions.

Procedures
1.  Create a Dockerfile with the following content (you may want to replace “16.04” with “latest” and if you want to change the location of where the .py file is,

What Are Some Tips on a Bash Programmer Becoming a PHP Programmer?

Problem scenario
You are a Bash programmer, but you want to learn how to code in PHP.  How do you learn to develop PHP scripts when you have a Linux bash background?

Solution
If you are new to PHP programming and familiar with Bash programming, remember these tips:

1.  Variable assignments involve the variable with the syntax of a cash sign “$” before the variable name. 

How Do You Troubleshoot the PHP Syntax Error “unexpected end of file in …”?

Problem scenario
You receive this message “PHP Parse error:  syntax error, unexpected end of file in /path/to/file.php on line x.”  How do you solve this?

Solution
Verify you have a closing brace for every open brace.  You may want to go to this site to help you find an unmatched brace.

How Do You Troubleshoot a “500 Error” with SonarQube?

Problem scenario
You try to run SonarScanner or do something with SonarQube.  You get a “500 Error” or some related internal server error.  What should you do?

Solution
Reinstall Java.  It is a dependency for SonarQube.  You can keep SonarQube installed and just stop the services while you uninstall and reinstall Java.  After you remove Java (and do research if you don’t know how), you can use this 

How Do You Access the SonarQube Web UI When It Is Only Listening on the 127.0.0.1 IP Address?

Problem scenario
SonarQube is listening on the loopback IP address on port 9000.  SonarQube is not listening on the external IP address.   You want to access the web UI for SonarQube. What should you do?

Solution
Install a web server and configure it to connect to port 9000.  Here are the details for using Apache web server on a Red Hat derivative (e.g., CentOS/RHEL/Fedora).

1. 

How Do You Troubleshoot the Message “pycurl error 22”?

Problem scenario
You are trying to install a new package or apply yum updates on a CentOS/RHEL/Fedora server.  But you get 404 errors or “pycurl error 22” as the result of your yum commands.  How do you use yum to install a new package or apply a new update?

Solution
Run this command:  sudo yum clean all

Now your yum commands should work.

How Do You Install Memcached on an Ubuntu Server?

Problem scenario
You want to try out Memcached.  How do you install memcached and php-memcached to test it?

Solution
(These directions were based on ServerMom.org directions.)

1.  Run these commands:

sudo apt-get -y update
sudo apt -y install memcached php-memcached php7.0 apache2
  # apache2 is not necessary but useful for testing purposes

2. 

How Do You Write an Ansible Playbook to Transfer a Compressed File and Unzip It without Using Linux Utilities?

Problem scenario
You have installed Ansible and configured it to work with other servers (managed nodes).  You want to write an Ansible playbook that will work with Linux managed nodes with three requirements:

1.  Transfer a compressed file from a web sever without wget.
2.  Uncompress a .zip file without unzip.
3.  Work without passwordless SSH authentication to the managed nodes.

How do you accomplish this with using Ansible-supported features?

How Do You Get the gatling.sh Script to Work when You Get an Error about There Not Being a Simulation Script?

Problem scenario
You run gatling.sh but you receive this error: “There is no simulation script. Please check that your scripts are in user-files/simulations”.  What should you do?

Possible solution #1
Go to the subdirectory user-files/simulations/.  Place a .scala file there that is a simulation script.

Possible solution #2
Run the gatling.sh script with “sudo” before the command like this: