In under 30-50 minutes!

Some technical knowledge helpful, but not required!

This is the fastest way to get hosted on RockRMS, 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 created and you've logged in for the first time, select your region preference before proceeding (this recipe works in any AWS region — just keep all stacks in the same one).
  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 (via Remote Desktop).
    Click on Services — search for "EC2". In the left-hand navigation click on the "Key Pairs" link and "Create key pair" (AWS uses this to decrypt and provide the initial administrator password so you can log into the remote desktop). Get your current PC's public IP address
    [ 30 seconds ]
    Go to www.whatismyip.org or google "what is my IP" and make note of your current IP — you'll enter this when running the first stack.
  3. CloudFormation Console
    Click on Services — search for "cloudformation"
  4. Create the VPC (networking foundation)
    [ 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 care about... this stack creates: a VPC, security groups (DB, admin, SMTP email, ALB, and web), and subnet groups (DB, web). It is now region-independent.
  5. Create the RDS database (SQL Server 2022)
    [ 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 care about... this stack creates: an S3 bucket for RockDB backups/snapshots, a DB Option Group (usable for Rocket.Chat or Jitsi Meet later), the RockDB, its master user/password, and its endpoint address and port.
  6. Create the Web Stack (Windows + IIS + Rock)
    [ Copy and paste this path to launch the Web Stack ]
    https://rock-cft-bucket-share.s3.amazonaws.com/webcft.yaml

    Sets up the web tier for RockRMS and installs IIS, SSMS, and all the necessary settings — [ ~3 mins to run the stack; the stack then stays "in progress" while the server configures itself (up to ~60–75 minutes, SSMS is the slow part) and only reports CREATE_COMPLETE when everything actually succeeded. The server finishes with one quick automatic reboot right after the stack goes green. ]

    Things you don't need to know nor likely care about... this stack creates: the ALB DNS for the Rock web host, the web host Instance ID, its EIP, and it downloads the current RockRMS installer zip to the server. The full setup log is on the server at C:\rock-bootstrap.log if you're curious or ever need to troubleshoot.

    Note: This stack also applies the IIS fast-startup settings from Jim Michael's excellent recipe: 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 you're not running 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; another 5-10 mins to validate the certificate and adjust DNS; can run concurrently with the Db Stack ] Search for "ACM" or "certificate" to begin the validation process. Once your certificate is validated you may move on.
  8. Update the Web Stack with SSL (optional, but highly recommended; requires an SSL Stack)
    [ 1 min to update the previously run Web Stack ]

    Navigate back to your CloudFormation dashboard (Services → search "cloudformation"). Select your existing "Web Stack" and click "Update" in the top right. Select "Use the current template" and flip "useSSLStackReference" from false to true. Click Next through to the final page and finish with "Update stack".
  9. Create the database Admin user
    This manual step is only needed once. [ ~3 mins to log into the remote desktop and create the database user ] Here's how to create the database Admin user:
    1. Open SQL Server Management Studio (search "ssms" in the Start Menu).
    2. Log in using your master user/password.
    3. Click the "New Query" button.
    4. Copy and paste the following SQL script (enter a new secret password between the single quotes marked "enteryourpasswordhere" 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 "Execute" once your new password is entered.
    6. Document your db admin user/password — you'll need it for the RockRMS installation and for any external service (e.g., Microsoft Power BI) connecting directly to the database.
    7. Close SSMS.
  10. Run the RockRMS Installation
    Once the Web Stack shows CREATE_COMPLETE, give the server ~2 minutes to finish its final automatic reboot, then open the Rock installer in your browser:
    1. In the CloudFormation dashboard, select the Web Stack and open its Outputs tab.
    2. Browse to http://<rockWebALBDNS>/Start.aspx (or use the EC2 instance's public IP: http://<public-ip>/Start.aspx).
    3. Proceed with the RockRMS installation. When asked for the database credentials, enter the Db Stack's endpoint address, the database name, and rockuser + the password from Step 9 (or the rockDbUserPassword you entered at Web Stack launch).
  11. Change your domain DNS settings
    If you haven't already adjusted your DNS in your domain registrar, do so now. Otherwise you can reach your finished RockRMS install using the public IP of the EC2 instance shown in the AWS console.
  12. Post Install Processes (optional, but highly recommended)
    1. Take a clean-install RDS (db) snapshot and back up/zip the inetpub folder — these two are critical for a successful backup and restore of your RockRMS environment. We outline this 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 for the latest fixes and features — ensure you've created a manual RDS database snapshot and inetpub backup first.
    3. Go to General Settings → Rock Update. Install the next highest version; this restarts the RockRMS site. Be patient while migrations run on restart.
    4. Once all updates are applied and the site is back up, make one final clean RDS database snapshot and inetpub backup before customizing Rock for your church's needs.

Next step: turn on email with Amazon SES

Your Rock site is running — but it can't send a single email until you configure a mail transport. Since you're already hosted on AWS, the natural next move is AWS SES Email SMTP Transport for RockRMS. Follow it as soon as this install is complete.

Why SES is the obvious choice once you're on AWS

  • It's effectively free at church scale. Amazon SES sends up to 50,000 emails/month at no cost when sending from your EC2 instance — no per-message fees like Mailgun or SendGrid, and nothing new to sign up for. See SES pricing.
  • You already have everything it needs. This recipe's Web Stack already opens outbound access to the SES SMTP endpoint (port 587), and your domain lives right where you'll verify it — setup is just a few clicks plus a DNS record.
  • Better deliverability. Verifying your domain with SPF/DKIM (walked through in the SES recipe) means your weekly announcements and giving receipts land in inboxes, not spam folders.
  • Room to grow. Start in the SES sandbox for testing, then request production access to email your whole congregation. The same account later supports the SES API transport with full open/click, bounce, and complaint tracking.

Set up AWS SES email →

Strongly Recommended: Lock in a Reserved Instance to cut your bill

Rock runs around the clock, so both your web server and database are steady-state, always-on workloads — the ideal case for a Reserved Instance (RI). Once you've confirmed your sizes work (give it a week or two on On-Demand first), reserving them can cut those two line items dramatically versus the monthly On-Demand rate.

Reserve both pieces:

  • EC2 web server (your t3.medium Windows host) — up to ~72% off On-Demand on a 3-year term. The Windows platform is included, so set the RI's platform to Windows. EC2 Reserved Instances (docs) · EC2 RI pricing
  • RDS database (your db.t3.small SQL Server instance) — up to ~69% off On-Demand in steady state. Note: for SQL Server the reservation is locked to the exact instance size (no size flexibility), and storage/backup are billed separately. RDS Reserved DB Instances (docs) · RDS pricing

Terms & payment: RIs come in 1-year or 3-year terms with No Upfront, Partial Upfront, or All Upfront payment (more upfront = bigger discount). A 1-year No Upfront RI has no lump-sum cost and still saves meaningfully — an easy first step for a small-church budget.

Estimate with AWS Pricing Calculator Savings Plans overview

Discount percentages are AWS's published headline figures and vary by instance type, region, and term — confirm yours in the Pricing Calculator or in AWS Cost Explorer's RI/Savings Plan recommendations.

Resources