|  Download Installing AirshipEasy ModeThere's a docker-compose.yml file in the main repo that used along side with
docker-compose will build and run the necessary software. See the official docker documentation for details on how to utilize the docker-compose. Manual Installation> Note: If you have trouble verifying GPG signatures, you might need to
> change the GPG library path. Requirements: 
PHP 7.0 or newer
* In general, try to always run the latest version available.
PostgreSQL 9.5 or newer
libsodium 1.0.9 or newer
* (Not released as of this writing)
ext/sodium 1.0.6 or newer
* You can install it from PECL after libsodium is installed
ext/curl
ext/gd
ext/json
ext/mbstring
ext/pgsql
ext/zip
 Optional: 
If you have Tor installed, your Airship can proxy all network requests over
the Tor network, thus preventing your server's IP address from being
revealed.
If your version of PHP doesn't ship with the JSON extension, you must install
that separately.
 The General Install Workflow
Install PHP 7
Install PostgreSQL 9.5 and ext/pgsql
Install libsodium (may require compiling it manually)
Install ext/sodium (requires PECL)
Install ext/curl
Configure/restart your webserver
Download CMS Airship
Visit your Airship's URL to finish the process
 Installing on GNU/LinuxDebian Jessie(These steps assume a freshly installed Debian system. You may be able to skip some steps.) First, you'll need the DotDeb repository as well as the PostgreSQL repository. PHP 7 (+ Basic Extensions)Run these commands to get PHP 7 installed. These instructions assume you have Ubuntu 16.04 or Debian Jessie with the dotdeb repository already set up: # Let's get, and verify, the correct PGP public key
gpg --fingerprint 6572BBEF1B5FF28B28B706837E3F070089DF5277
if [ $? -ne 0 ]; then
    echo -e "\033[33mDownloading PGP Public Key...\033[0m"
    gpg --recv-keys 6572BBEF1B5FF28B28B706837E3F070089DF5277
    # http://pgp.mit.edu/pks/lookup?op=vindex&fingerprint=on&search=0x6572BBEF1B5FF28B28B706837E3F070089DF5277
    # DotDeb Signing Key 
    gpg --fingerprint 6572BBEF1B5FF28B28B706837E3F070089DF5277
    if [ $? -ne 0 ]; then
        echo -e "\033[31mCould not download PGP public key for verification\033[0m"
        exit
    fi
fi
gpg -a --export 6572BBEF1B5FF28B28B706837E3F070089DF5277 | sudo apt-key add -
# Install PHP from DotDeb
sudo apt-get -y install php7.0 php7.0-cli php7.0-fpm php7.0-json php7.0-pgsql php7.0-curl php7.0-dev php7.0-mbstring php7.0-gd
wget https://pear.php.net/go-pear.phar
# The PEAR team doesn't provide a GPG signature, so we have to do this:
echo "8322214a6979a0917f0068af924428a80ff7083b94343396b13dac1d0f916748025fab72290af340d30633837222c277  go-pear.phar" | sha384sum -c
if [ $? -eq 0 ]; then
    php go-pear.phar
fi
sudo pecl install zip
echo "extension=zip.so" > /etc/php/7.0/cli/conf.d/20-zip.ini
echo "extension=zip.so" > /etc/php/7.0/fpm/conf.d/zip.ini
 PostgreSQLecho "deb https://apt.postgresql.org/pub/repos/apt/ jessie-pgdg main" >> /etc/apt/sources.list
# Let's get, and verify, the correct PGP public key
gpg --fingerprint B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8
if [ $? -ne 0 ]; then
    echo -e "\033[33mDownloading PGP Public Key...\033[0m"
    gpg --recv-keys B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8
    # http://pgp.mit.edu/pks/lookup?op=vindex&fingerprint=on&search=0xB97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8
    # PostgreSQL Signing Key 
    gpg --fingerprint B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8
    if [ $? -ne 0 ]; then
        echo -e "\033[31mCould not download PGP public key for verification\033[0m"
        exit
    fi
fi
gpg -a --export B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8 | sudo apt-key add -
# Now. let's install PostgreSQL
sudo apt-get update
sudo apt-get install postgresql-9.5
 LibsodiumNext, you will need to install libsodium and ext/sodium.
Something like these commands ought to do the trick. git clone https://github.com/jedisct1/libsodium.git
cd libsodium
git checkout tags/1.0.10
./autogen.sh
./configure && make distcheck
sudo make install
sudo pecl install libsodium
# Now grab the PECL extension
sudo phpenmod libsodium
 Your WebserverCaddy (Recommended)The easiest webserver (and likely the most secure) is Caddy.
One of its main advantages is automatic HTTPS integration with the certificate
authority, LetsEncrypt. Refer to the Caddy quick start to
set up Caddy and Running Caddy in production. Your Caddyfile should look like the example.
Feel free to customize it to meet your needs. It assumes PHP7-FPM. NginxRefer to the nginx documentation.
You should be able to get away with: sudo apt-get install php7.0-fpm nginx
 Your virtual host configuration file should look like the example.
Feel free to customize it to meet your needs. You'll want to set your document root to the src/publicsubdirectory
of your Airship. ApacheRefer to the Apache documentation.
You should be able to get away with: sudo apt-get install php7.0 apache2
 You'll want to set your document root to the src/publicsubdirectory
of your Airship. Installing CMS AirshipOnce your webserver is setup and configured, you're ready to begin installing
CMS Airship. Use Git and Composer to obtain the latest release. cd /var/www/
git clone https://github.com/paragonie/airship.git
cd airship
git checkout v1.4.2
composer install
 Since Airship self-updates, it needs to be able to write to itself. chown -R myusername:www-data airship
chmod -R g+w airship
 If you don't already have a PostgreSQL database set up: sudo su postgres -c "createuser airship -P"
# You will be prompted for a password twice.
sudo su postgres -c "createdb -O airship airship"
 If you haven't already done so, restart your webserver then visit the URL or IP
address that corresponds to the active virtual host in your browser. Once you access the web installer, a security cookie is placed in your browser
which prevents anyone from accessing the installer until the process is 
finished. If you get locked out, run this command and reload
the page. (You will have to start over, but the process is brief.) php src/Installer/launch.php reset
 From this point, follow the prompts on the web-based installer and you'll be
ready to take off. Next: Basic Usage. |