Manual Setup

cortex-starter Preparation

As cortex itself is only a Rails Engine, it needs to be mounted within a parent Rails applicaton. cortex-starterarrow-up-right serves as a starting point for new users, with cortex and cortex-plugins-core already mounted and configured with several example ContentTypes/Decorators. Start by cloning the repository:

$ git clone [email protected]:cortex-cms/cortex-starter.git && cd cortex-starter

Environment

Copy and rename the example .env.example file as .env and modify it to match your environment.

For a rudimentary setup, these variables should be configured:

  • Execute $ bin/rails secret twice to generate both an APP_SECRET and DEVISE_SECRET

  • If the superuser isn't used for the app databases, the DATABASE_USERNAME and DATABASE_PASSWORD should be set accordingly.

Dependencies

System

macOS

  • Install the Xcode Command Line tools:

$ xcode-select --install

and start them with brew services:

or launchctl:

Linux

  • Install all Cortex system-wide dependencies (and the readline Ruby/byebug build dependency) using your distribution's package manager (pacman, apt-get, yum, etc). For example, with Ubuntu's apt-get:

circle-info

Ubuntu and Redhat/Fedora do not have an official elasticsearch package - you must use Elasticsearch's repositories for APTarrow-up-right or RPMarrow-up-right or follow these manual instructionsarrow-up-right. The same goes for phantomjs. Build from sourcearrow-up-right or use a PPAarrow-up-right. Additionally, yarn will need its repository added for these distributions. Follow these instructionsarrow-up-right. Other Linux distributions likely have these as prebuilt packages in their official or user repositories.

  • Enable & start system agents using your distribution's service manager frontend, which is likely systemd's frontend, systemctl:

Application

  • Install Bundler and its dependencies:

  • Install node dependencies using yarn:

Data Provisioning

Quick

cortex-starter ships with an automated setup script. Execute this in lieu of the Manual Setup steps below, if you're comfortable doing so:

Manual

  • Create databases:

  • Initialize the schema:

  • Seed database with a top-level tenant, the superuser and Custom Content data, then rebuild the Elasticsearch index:

Server

Start Cortex, Sidekiq and live Webpack rebuild via Foreman with the dev-server script:

The admin interface should now be accessible locally at http://localhost:3000. To access Cortex as superadmin, login as [email protected] with password welcome1.

Last updated