In under 30-50 minutes!

Some technical knowledge helpful, but not required!

This is the fastest way to get hosted on RockRMS which is based on the long technical version of this recipe: https://community.rockrms.com/recipes/96/free-tier-aws-hosting-for-rockrms.

This hosting environment is best suited for smaller church production hosting, or demo/development purposes, but can easily scale once completed.
Follow along with the video and steps below (we suggest playing the video in a second browser window).

vRX-Presentation-Demo from Harvest Bible Chapel Pittsburgh North on Vimeo.

Let's Get Started!

  1. Create an AWS account (https://aws.amazon.com)
    [ less than 3 minutes ]
    Click on the large orange "Create an AWS Account" button in the top-right corner of the page.
    Use an existing Amazon account or start with a fresh one for your church organization.
    We suggest starting with a clean new account and credit card.

    After your account is successfully created and you've logged in to AWS for the first time, select your region preference before proceeding.


  2. Complete Prerequisites:
    Create a key pair and download the PEM file
    [ 1 minute ]
    This encrypted key is for logging into the Windows Server Instance (virtual machine via Remote Desktop)
    Click on Services - search for "EC2"
    In the left-hand navigation click on the "Key Pair" link and "Create key pair" (used by AWS to decrypt and provide the initial administrator password in orderto log into the remote desktop).


    Get your current PCs Public IP address
    [ 30 seconds ]
    Go to www.whatismyip.org or just google “what is my IP” and make note of your current IP, you’ll need to enter this into the details when running the first stack.


  3. Cloudformation Console
    Click on Services - search for "cloudformation"


  4. Create the VPC (Virtual Windows Server Machine)
    [ Copy and paste this path to launch the VPC Stack ]
     https://rock-cft-bucket-share.s3.amazonaws.com/vpccft.yaml
    Sets up a core VPC for any network/provisioning requirements - [ 1 min to run and complete ]

    Things you don't need to know nor likely do not care about...this stack creates: a VPC, security groups for the (DB, admin, smtp email, ALB, and web), subnet groups for the (DB, web).


  5. Create RDS database
    [ Copy and paste this path to launch the DB Stack ]
    https://rock-cft-bucket-share.s3.amazonaws.com/dbcft.yaml
    Sets up a DB tier for RockRMS - [ 1 minute to run, 15 minutes of waiting for it to build ]

    Things you don’t need to know nor likely do not care about...this stack creates: an S3 Bucket for RockDB backups/snapshots, a DB Optional group for the RockDB that can be used for Rocket.Chat or Jitsi Meet later, name of the RockDB, master user and password for the RockDB, endpoint address and port for the RockDB.


  6. Create the Network Connections (Web Stack)
    [ Copy and paste this path to launch the Web Stack ]
    https://rock-cft-bucket-share.s3.amazonaws.com/webcft.yaml


    Sets up a Web tier for RockRMS, Installs SSMS, IIS along with all of the necessary settings - [ 3 mins to run stack, additional windows server Powershell script to install SSMS and IIS takes another 15 mins, can run concurrently with DB stack to speed up entire setup ]

    Things you don’t need to know nor likely do not care about...this stack creates: a DNS of the Rock web host ALB (automatic Load Balancer), an Instance ID of the Rock web host, EIP of the Rock web host, downloads the current RockRMS installer zip file to VPC.

    Note: This stack also integrates the necessary setting changes for IIS to enable fast startup as outlined in Jim Michael's fantastic recipe here:
    https://community.rockrms.com/recipes/176/preload-rock-for-a-faster-start


  7. Create the SSL Certificate (SSL Stack optional, but highly recommended. Skip to Step 9 if not choosing to run the SSL stack.)
    [ Copy and paste this path to launch the SSL Stack ]
    https://rock-cft-bucket-share.s3.amazonaws.com/sslcft.yaml
    This can be run at any point, even after Rock is installed. [ 1 min to run stack, additional 5-10 mins to validate SSL certificate and adjust domain DNS settings, can run concurrently with DB stack to speed up entire setup ]

    Search for "ACM" or "certificate" to begin the authentication process.
    Once you've validated your new certificate you may move on.


  8. Update the Web Stack with SSL
    (optional, but highly recommended; Requires an SSL Stack)
    [ 1 min to update previously run Web Stack ]

    Navigate back to your Cloudformation dashboard or click on Services and search for "cloudformation"

    Select your existing "Web Stack" and click the "Update" button in the top right.

    Select "Use the current template" and flip the "useSSLStackReference" value from false to true.

    Click next a few times until you get to the final page and finish with the "Update stack" button.


  9. Create the database Admin user
    This manual step is only needed once and may be scripted in a future version of the Web Stack - SQL Script for db admin account setup… launch RockRMS install Start script [ 3 mins to login into the remote desktop and create the database user ]


    Here's how to create the database Admin user:
    1. Open up SQL Server Management Studio by searching for "ssms" in the Start Menu
    2. Log into using your previous user/password
    3. Click "New Query" button
    4. Copy and Paste the following SQL script (enter a new secret password between the two single-quotes indicated by "enteryourpasswordhere" section  before running)
      USE master;
      GO
      CREATE LOGIN [rockuser]
      WITH PASSWORD = N'enteryourpasswordhere',
      CHECK_POLICY = OFF,
      CHECK_EXPIRATION = OFF;
      GO
      GRANT ALTER ANY CONNECTION TO [rockuser] WITH GRANT OPTION;
      GRANT CREATE ANY DATABASE TO [rockuser] WITH GRANT OPTION;
      GRANT VIEW ANY DATABASE TO [rockuser] WITH GRANT OPTION;
      GRANT VIEW ANY DEFINITION TO [rockuser] WITH GRANT OPTION;
      GRANT VIEW SERVER STATE TO [rockuser] WITH GRANT OPTION;
    5. Click the "Execute" button once your new password has been entered
    6. Document your db admin account user/password as you’ll need this for the actual RockRMS installation process and for future use if connecting directly to the database with an external service such as Microsoft PowerBI.
    7. Close SSMS


  10. Run the RockRMS Installation
    The Web Stack scripts should have automatically opened Internet Explorer and directed the launch page to "localhost/Start.aspx" for you. This is a good indicator that the Web Stack has completed successfully and you may proceed with the installation of RockRMS.


  11. Change your domain DNS settings
    If you did not already adjust your DNS settings in your Domain Registrar then you may do so at this point. Otherwise you will be able to get to your finalized RockRMS installation using the Public IP of the EC2/Virtual PC shown in the AWS console.



  12. Post Install Processes (optional, but highly recommended)

    1. Take a clean install RDS (db) Snapshot and Backup/zip the inetpub folder - These 2 are critical for a successful backup and restore of RockRMS environment. With them you can restore or migrate your environment at any point.
      We outline this backup process here: (https://community.rockrms.com/recipes/96/free-tier-aws-hosting-for-rockrms#P4-1A)
    2. Upgrade to the most current version of RockRMS to get all of the most recent fixes and features for your church - Ensure that you've already created a manual RDS database snapshot and inetpub folder backup before upgrading as discussed above.
    3. Go-to General Settings - Rock Update to proceed. Install the next highest version, this will restart the RockRMS site. Be patient while all of the migrations occur upon its restart.

    4. Once all of the updates have been applied and the site is backup and running make one final clean RDS database snapshot and inetpub folder backup before modifying your RockRMS site for your church’s needs!