Building and Running Crafter CMS From Source. It's Simple!

DZone 's Guide to

Building and Running Crafter CMS From Source. It's Simple!

If you're looking to switch Content Management Systems, read on to learn how to easily use this open-source CMS with just a few commands.

· Web Dev Zone ·
Free Resource

Crafter CMS is an open-source content management system for web sites, mobile apps, VR, and more. You can learn more about Crafter here.  In this article, you will learn how to build Crafter CMS from source as well as how to start and stop the services.  It’s very easy!  Thanks to Gradle and a very easy install process, you will be up and running in 3 simple command line operations!

0. Prerequisites

You must have these prerequisites on your system before you begin:

  • Java 8
  • Git 2.x+
  • Maven 3.3.x+

OS X Extra Prerequisite

  • If you’re on OS X, then using brew install the latest openssl formula, like this: brew install openssl
  • 1. Clone the Crafter Repository

    git clone https://github.com/craftercms/craftercms.git

    This will create a directory called craftercms.  Change path to this directory.

    2. Build the Environment

    Crafter CMS is built along a microservices architecture, and as such, comprises a number of headless, RESTful modules that work together to provide a solution. In this section, we’ll start with the simple case of build everything/run everything, and then move on to building/hacking individual modules.

    Build all Crafter CMS modules:

     ./gradlew init build deploy

    3. Start and Stop All Services

    Start Crafter CMS:

     ./gradlew start

    You can now point your browser to http://localhost:8080/studio and start using Crafter CMS. To get started with your first Crafter CMS experience, you can follow this guide


  • The authoring environment runs on port 8080, a great place to start, while the delivery environment runs on port9080.
  • Stop Crafter CMS:

     ./gradlew stop

    Two Environments: Authoring vs Delivery

    You might have noticed that you essentially have two environments built and running: authoring and delivery. Crafter CMS is a decoupled CMS, and that means you have an authoring environment that caters to content creators, and a different environment, delivery, that handles the end-users that use the experience created by the former.

    As a developer, you can use an authoring environment for most tasks without the need to run a delivery environment. It’s important to note that delivery essentially runs the same software that’s in authoring except Crafter Studio (the authoring tools). By default, this project will build both environments unless instructed otherwise.

    The authoring environment runs at http://localhost:8080/studio, whereas

    the delivery environment runs at http://localhost:9080/

    Start and Stop a Specific Environment

    To start and stop one of the two environments is similar to building/starting/stopping all of them.

    cms, crafter, web dev

    Published at DZone with permission of Russ Danner , DZone MVB. See the original article here.

    Opinions expressed by DZone contributors are their own.

    {{ parent.title || parent.header.title}}

    {{ parent.tldr }}

    {{ parent.urlSource.name }}