Skip to content

Instantly share code, notes, and snippets.

@bajpangosh
Created May 3, 2024 18:10
Show Gist options
  • Save bajpangosh/cf6fe43d62a9b60f7ed22d15a2190d15 to your computer and use it in GitHub Desktop.
Save bajpangosh/cf6fe43d62a9b60f7ed22d15a2190d15 to your computer and use it in GitHub Desktop.

Revisions

  1. bajpangosh created this gist May 3, 2024.
    41 changes: 41 additions & 0 deletions CapRover.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,41 @@
    #!/bin/bash

    # Update system packages
    echo "Updating system packages..."
    sudo apt update

    # Install curl if not installed
    echo "Installing curl..."
    sudo apt install curl

    # Add Docker’s official GPG key
    echo "Adding Docker’s official GPG key..."
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

    # Setup a stable repository
    echo "Setting up a stable repository..."
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

    # Update the system packages again
    echo "Updating the system packages again..."
    sudo apt update

    # Install the latest version of Docker
    echo "Installing the latest version of Docker..."
    sudo apt-get install docker-ce docker-ce-cli containerd.io

    # Verify Root domain
    echo "Verifying Root domain..."
    nslookup randomstring123.captain.localhost

    # Create a folder to store the configurations
    echo "Creating a folder to store the configurations..."
    sudo mkdir -p /captain/data/

    # Create configurations under the folder you have created to allow CapRover to be installed locally
    echo "Creating configurations under the folder you have created to allow CapRover to be installed locally..."
    echo "{\"skipVerifyingDomains\":\"true\"}" > /captain/data/config-override.json

    # Install CapRover on Ubuntu 20.04
    echo "Installing CapRover on Ubuntu 20.04..."
    docker run -e MAIN_NODE_IP_ADDRESS=127.0.0.1 -e ACCEPTED_TERMS=true -p 80:80 -p 443:443 -p 3000:3000 -v /var/run/docker.sock:/var/run/docker.sock -v /captain:/captain caprover/caprover