Self-hosted apps

    Deploy WordPress on Oracle Cloud's free tier

    WordPress plus MySQL on an ARM VM with automatic HTTPS — no per-site hosting plan.

    At a glance

    Base imagewordpress:php8.3-apache
    Port80
    Start commandapache2-foreground
    Infrastructure cost$0 on Oracle Always Free (platform fee for managed DevOps)

    Running WordPress on Ampere ARM

    Both the WordPress and MariaDB images are multi-arch. A 2 OCPU / 12 GB Ampere instance running PHP 8.3 with OPcache outperforms most entry-level shared hosting.

    Steps

    1. Run WordPress and the database as separate containers. It keeps upgrades and backups independent.
    2. Put Caddy in front. Caddy terminates TLS and forwards to the WordPress container on the private port.
    3. Back up both volumes. The uploads directory and the SQL dump are both needed for a real restore.

    Dockerfile for WordPress on ARM64

    # docker-compose.yml
    services:
      wordpress:
        image: wordpress:php8.3-apache
        restart: unless-stopped
        environment:
          WORDPRESS_DB_HOST: db
          WORDPRESS_DB_USER: wp
          WORDPRESS_DB_PASSWORD: ${DB_PASSWORD}
          WORDPRESS_DB_NAME: wp
        volumes:
          - wpdata:/var/www/html
        ports:
          - "127.0.0.1:8080:80"
      db:
        image: mariadb:11
        restart: unless-stopped
        environment:
          MARIADB_DATABASE: wp
          MARIADB_USER: wp
          MARIADB_PASSWORD: ${DB_PASSWORD}
          MARIADB_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
        volumes:
          - dbdata:/var/lib/mysql
    volumes:
      wpdata:
      dbdata:

    Need one tailored to your repository? The free Dockerfile generator writes an ARM-ready multi-stage build for you.

    Common mistakes

    • Site URL locked to an IP: Set WP_HOME and WP_SITEURL to your domain before you start linking pages.
    • Upload size limits: PHP defaults cap uploads at 2 MB; raise upload_max_filesize and post_max_size.
    • Forgetting updates: Self-hosting means core, theme and plugin updates are your responsibility.

    Related reading

    Get the Oracle Always Free deploy checklist

    One email with the exact steps, capacity workarounds and tools we use to ship apps for $0 of cloud spend.

    One email, no spam. Unsubscribe anytime.

    Frequently asked

    Is this really cheaper?+

    Oracle Always Free compute and 10 TB/month of egress cost $0; you pay only Cheaploy's platform fee instead of a per-site hosting plan.

    Can I host several sites?+

    Yes — one container per site behind the same Caddy instance, or WordPress multisite.

    What about caching?+

    Add a page-cache plugin and Redis object cache; both run comfortably on the same VM.

    Deploy your project for $0

    No credit card. No Oracle sales call. Ship to your own cloud in under 10 minutes.

    Start free