Expose your web server on GitHub Actions to the internet using Cloudflare Tunnel

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • cloudflared

    Cloudflare Tunnel client (formerly Argo Tunnel)

  • name: Setup cloudflared description: Setup/Install Cloudflare Tunnel client for GitHub Actions branding: icon: cloud color: orange inputs: cloudflare_tunnel_certificate: description: Cloudflare Tunnel Certificate (cert.pem) required: true cloudflare_tunnel_credential: description: Cloudflare Tunnel Credential encoded in base64 (deadbeef-1234-4321-abcd-123456789ab.json) required: true cloudflare_tunnel_configuration: description: Cloudflare Tunnel Configuration encoded in base64 (config.yml) required: true cloudflare_tunnel_id: description: Cloudflare Tunnel ID (deadbeef-1234-4321-abcd-123456789ab) required: true autostart: description: Autostart Cloudflare Tunnel required: false default: true runs: using: composite steps: - name: Download cloudflared for Linux shell: bash working-directory: ${{ runner.temp }} run: aria2c -x 16 "https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64" - name: Install cloudflared shell: bash working-directory: ${{ runner.temp }} run: | chmod +x cloudflared-linux-amd64 mv cloudflared-linux-amd64 /usr/local/bin/cloudflared - name: Login to Cloudflare Tunnel client shell: bash env: cloudflare_tunnel_certificate: ${{ inputs.cloudflare_tunnel_certificate }} cloudflare_tunnel_credential: ${{ inputs.cloudflare_tunnel_credential }} cloudflare_tunnel_configuration: ${{ inputs.cloudflare_tunnel_configuration }} cloudflare_tunnel_id: ${{ inputs.cloudflare_tunnel_id }} run: | mkdir ~/.cloudflared/ echo $cloudflare_tunnel_certificate > ~/.cloudflared/cert.pem echo $cloudflare_tunnel_credential | base64 -d > ~/.cloudflared/${cloudflare_tunnel_id}.json echo $cloudflare_tunnel_configuration | base64 -d > ~/.cloudflared/config.yml - name: Run Cloudflare Tunnel if: inputs.autostart == 'true' shell: bash env: cloudflare_tunnel_id: ${{ inputs.cloudflare_tunnel_id }} run: | nohup cloudflared tunnel run > ${RUNNER_TEMP}/cloudflared.log 2>&1 & echo $! > ${RUNNER_TEMP}/cloudflared.pid

  • setup-cloudflared

    Setup/Install Cloudflare Tunnel client for GitHub Actions

  • View on GitHub

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts