The idea about starting your services under Supervisor's supervision is to be able to run multiple services under a single daemon. Depending on the Supervisor's configuration it will be able to start,stop or restart any given service as a child process. In this config we show how to runapache2 as supervised service ( useful for docker images etc. ) on Ubuntu/Debian Linux. First, install supervisor:
# apt-get install supervisor
Include apache2's supervisor configuration into /etc/supervisor/conf.d/. Supervisor will pick any configuration files from this directory where the only requirement is *.conf file extension. For example insert a following lines into a new file /etc/supervisor/conf.d/apache2.conf:
[program:apache2]
command=/usr/sbin/apache2ctl -DFOREGROUND

This article describes an upgrade procedure from Debian Wheezy to Debian Jessie. Debian Linux with a code name "Jessie" is the latest stable Debian release which succeeds previous stable version "Wheezy".

It is important to point out that nothing is bulletproof and proper failover procedure should be discussed before the upgrade takes place. The rule of thumb is, the less software is installed on your system the higher chance for a successful upgrade. Before you move on with the upgrade consider the following recommendations.

Relevant article:

Upgrade Recommendations

  • Remove unnecessary packages
  • Fully upgrade your current system
  • Make a data backup
  • Although there should not be a problem to perform update via SSH. If possible it is recommended to perform upgrade directly using console

Fully Upgrade current System

First, fully upgrade your current Wheezy Debian system:
# apt-get update
# apt-get upgrade
# apt-get dist-upgrade

Let's say you wish to do some changes to nginx source code in order to add or remove some features before the actual nginx package installation. In this config we will show how to recompile nginx package on Debian linux.

First install package building tools:
# apt-get install dpkg-dev
Next, we need to install all nginx build dependencies:
# apt-get build-dep nginx

What is Reverse Proxy

In short a reverse proxy server acts as intermediary service between client requesting a resource such as HTTP page and one or more servers. Using reverse proxy allows for multiple advantages such as improved performance, load balancing, transparent server maintenance of servers behind the reverse proxy server, improved security and more.

Basic scenario

In this section we will setup a basic reverse proxy using Nginx webserver on Debian Linux. We will be running two separate servers server1 and server2. Server1 is running Debian Linux with Nginx reverse proxy and an IP address 10.1.1.251. Server2 run basic website using Apache2 webserver on IP address 10.1.1.252. We assume that Server2 is up and running to serve a content on port 80:
$ lynx -dump http://10.1.1.252
   Hello this is apache2 sitting on host 10.1.1.252

ARE YOU LOOKING FOR A LINUX JOB?
Submit your RESUME, create a JOB ALERT or subscribe to RSS feed on LinuxCareers.com.
LINUX CAREER NEWSLETTER
Subscribe to NEWSLETTER and receive latest news, jobs, career advice and tutorials.
DO YOU NEED ADDITIONAL HELP?
Get extra help by visiting our LINUX FORUM or simply use comments below.