🚀 Host WordPress on AWS Lightsail

Host WordPress on AWS Lightsail

Launch a Bitnami WordPress instance, attach a static IP, and secure the default admin

🧠 Skill level: Beginner — think of it like setting up your first gaming server
⏱️ Time required: 20–30 minutes
💰 Cost: About $3.50–$7 per month
🧰 Tools needed: AWS account + browser — that’s it!


🧩 What You’ll Learn

By the end of this guide, you’ll have your own WordPress website running on AWS.
You’ll:
✅ Launch a Lightsail instance using the Bitnami WordPress image
✅ Access your site and admin panel
✅ Assign a static IP (so your address never changes)
✅ Secure your admin user and set the basics


🪜Prerequisites

  • An AWS account (any region works; I’ll use us-east-1 / N. Virginia) In case you dont have and AWS Account, here’s a quick tutorial on how to open an AWS account.
  • A domain name (optional now; we’ll use the raw IP first)
  • A browser. That’s it

🪴 Step 1: Create Your WordPress Instance in Lightsail

1️⃣ Login to your AWS Console, and search for Lightsail in the search bar.


2️⃣ Under Instances, you should see an option Create instance, click it.


3️⃣ Under Instance location, choose the location that you prefer and where you want our server to be located. I use N. Vurginia (us-east-1), as it is the cheapest (most economical). It would also ask you to choose the availability zone, frankly it doesn’t matter. Choose any.


4️⃣ Select a platform: Linux/Unix


5️⃣ Select a blueprint: Choose WordPress (look for “WordPress Certified by Bitnami and Automattic”).


6️⃣ Next, you should see ▶️Optional, click on it to open few more options to update.

First , you’ll see Launch Script, ignore that. Look out for SSH Key option uder that and click on +Create Custom Key.

In the pop-up, click create, give your kep pair a name, for example nocodeaws-key. Click Generate Key Pair.

⚠️Very Important Step

Now you should see an option to download private key. Download it, the file should look like this -> nocodeaws-key.pem. This is the only time you will be able to download it. Keep it safe and dont share with anyone.

Key Pair

A key pair acts like a lock for your server. One part of the key (Public Key) is stored in the server and another part (privateKey) is with you (one that you downloaded now). In order to login to the server terminal, we’ll use this keypair. There are a few more steps where we will make this keypair more secure, but we will do that later. For now, let’s continue.


7️⃣ Move onto Choose your instance plan
start small (e.g., $5). You can upgrade later.

8️⃣ Name your instance, e.g., nocodeaws-wp-01.

Tags

Tags are a way to identify your instances/ resources on the cloud. A tag is a label consisting of a key and an optional value. Imagine you run hundreds and thousands of instances, then tagging becomes very important as it would help you filter, manage or track your resources. For now, since we are just starting, I’d skip it.

9️⃣ Click Create instance.

⏳ Wait a couple of minutes. You’ll soon see a green Running status and a Public IP next to your new instance.


🌐 Step 2: Visit Your Website

👉 Copy the Public IP (something like 44.123.45.67) – Public IP is an address to your server on the internet.
👉 Paste it into your browser

🎉 You’ll see either:

  • A Bitnami WordPress Welcome Page, or
  • The default WordPress homepage

If you see anything WordPress-related — congrats, it’s alive! ⚡


🔐 Step 3: Get Your WordPress Admin Password

By default:

  • Username: user
  • Password: hidden inside the server

Here’s how to find it 👇

1️⃣ In Lightsail → click your instance
2️⃣ Click Connect using SSH (browser-based terminal opens)
3️⃣ Type:

cat /home/bitnami/bitnami_credentials

(If that doesn’t work, try /opt/bitnami/credentials)
4️⃣ You’ll see something like:

Username: user
Password: AbCDefG123!@

5️⃣ Copy the password and keep it safe. 🗝️


🧑‍💻 Step 4: Log In to WordPress

🌍 Go to:

http://YOUR_PUBLIC_IP/wp-admin

🪪 Login with:

  • Username: user
  • Password: (the one you just copied)

✅ You’re inside the WordPress dashboard!
This is your site’s control room — from here, you can post blogs, install themes, and customize everything.


📡 Step 5: Attach a Static IP

Right now, if AWS restarts your server, your IP might change.
A static IP keeps it permanent — like giving your site a fixed phone number. ☎️

1️⃣ In Lightsail → click your instance
2️⃣ Go to Networking tab
3️⃣ Click Create static IP
4️⃣ Choose your instance → name it → Create

Your website now has a fixed address! 🏡


🌍 Step 6 (Optional): Connect Your Domain

If you already own a domain (e.g. nocodeaws.com):

  • Log in to your domain provider (like Namecheap or GoDaddy)
  • Create these DNS records 👇
TypeNameValueTTL
A@YOUR_STATIC_IP300
CNAMEwwwyourdomain.com300

Now when someone visits nocodeaws.com, it’ll open your Lightsail site! 🎯


🛡️ Step 7: Secure Your WordPress Admin

It’s time to replace the default “user” admin.

👤 Create your own admin

1️⃣ Dashboard → Users → Add New
2️⃣ Username: yourname
3️⃣ Role: Administrator
4️⃣ Click Add New User

Then:

  • Log out and log in as your new admin
  • Go to Users → All Users → Delete “user”
  • Choose Attribute all content to yourname

✅ Done — you now own your site completely.


⚙️ Step 8: Configure Basic Settings

🧭 Go to Settings → General

  • Site Title → No Code AWS
  • Tagline → Build on AWS — without code
  • Timezone → Your city

🔗 Settings → Permalinks → Post name → Save Changes

This makes your blog URLs clean like:

https://nocodeaws.com/host-wordpress-on-lightsail

instead of

https://nocodeaws.com/?p=123

🧰 Step 9: Add a Few Safety Plugins

All are free from the plugin library:

🛡️ Limit Login Attempts Reloaded → blocks hackers from guessing passwords
🧱 Disable XML-RPC → closes a common attack route
🩺 Health Check & Troubleshooting → quick server diagnostics

To install:
Plugins → Add New → Search → Install → Activate


💾 Step 10: Enable Automatic Backups

Lightsail can take daily snapshots — like save points in a game 🎮

1️⃣ Lightsail → your instance → Snapshots tab
2️⃣ Turn on Automatic snapshots
3️⃣ Pick a time (off-peak hours are best)

If anything breaks, you can restore your site instantly.


✅ Quick Final Check

CheckResult
Site loads on browser?
WordPress dashboard accessible?
Static IP attached?
New admin created?
Backups running?

If all green — you’re officially running WordPress on AWS! 🌟


🔜 What’s Next?

Now that your site is live and stable:

1️⃣ Add free HTTPS with Let’s Encrypt — secure padlock & better SEO 🔒
2️⃣ Store media in Amazon S3 — offload large images ☁️
3️⃣ Send emails via AWS SES — reliable contact forms ✉️
4️⃣ Add CloudFront CDN — global speed boost 🚀


Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top