From a1a0bdf7b6c4432edfb2d8ef49bcdde19a24210b Mon Sep 17 00:00:00 2001 From: Vin Is A Dev Date: Wed, 4 Dec 2024 11:27:13 -0600 Subject: [PATCH] Vin/nixpacks docs update (#621) * Alphebatize and add missing providers from Nixpacks docs * Added Microsoft Container registry to supported images list * Updated grammar and headings for consistency across articles --- src/docs/guides/astro.md | 12 ++++---- src/docs/guides/axum.md | 10 +++---- src/docs/guides/beego.md | 12 ++++---- src/docs/guides/build-configuration.md | 10 +++---- src/docs/guides/cli.md | 2 +- src/docs/guides/create.md | 4 +-- src/docs/guides/cron-jobs.md | 4 +-- src/docs/guides/django.md | 8 ++--- src/docs/guides/environments.md | 2 +- src/docs/guides/express.md | 8 ++--- src/docs/guides/fastapi.md | 6 ++-- src/docs/guides/fastify.md | 6 ++-- src/docs/guides/fixing-common-errors.md | 2 +- src/docs/guides/flask.md | 10 +++---- src/docs/guides/foundations.md | 4 +-- src/docs/guides/gin.md | 6 ++-- src/docs/guides/github-autodeploys.md | 2 +- src/docs/guides/laravel.md | 8 ++--- src/docs/guides/luminus.md | 10 +++---- src/docs/guides/manage-deployments.md | 6 ++-- src/docs/guides/manage-projects.md | 6 ++-- src/docs/guides/manage-services.md | 4 +-- src/docs/guides/manage-variables.md | 6 ++-- src/docs/guides/optimize-performance.md | 6 ++-- src/docs/guides/optimize-usage.md | 8 ++--- src/docs/guides/private-networking.md | 4 +-- src/docs/guides/public-api.md | 14 ++++----- src/docs/guides/public-networking.md | 8 ++--- src/docs/guides/services.md | 24 ++++++++------- src/docs/guides/variables.md | 22 +++++++------- src/docs/guides/webhooks.md | 4 +-- src/docs/overview/about-railway.md | 4 +-- src/docs/overview/advanced-concepts.md | 4 +-- src/docs/overview/best-practices.md | 14 ++++----- src/docs/reference/databases.md | 2 +- src/docs/reference/nixpacks.md | 29 ++++++++++++------- src/docs/reference/pricing/plans.md | 10 +++---- src/docs/reference/public-api.md | 6 ++-- src/docs/reference/services.md | 4 +-- src/docs/reference/usage-limits.md | 6 ++-- .../tutorials/add-a-cdn-using-cloudfront.md | 4 +-- src/docs/tutorials/deploying-a-monorepo.md | 16 +++++----- src/docs/tutorials/migrate-from-heroku.md | 4 +-- .../set-up-a-tailscale-subnet-router.md | 4 +-- 44 files changed, 178 insertions(+), 167 deletions(-) diff --git a/src/docs/guides/astro.md b/src/docs/guides/astro.md index 05d454212..47dff2109 100644 --- a/src/docs/guides/astro.md +++ b/src/docs/guides/astro.md @@ -33,7 +33,7 @@ For the remaining options, select the defaults and press Enter. All necessary de A new Astro app will be provisioned for you in the `blog` directory. -### Run the Astro App locally +### Run the Astro App Locally Enter your project directory using `cd blog`. @@ -45,7 +45,7 @@ npm run dev Open your browser and go to `http://localhost:4321` to see your app. -### Enable Server side rendering (SSR) +### Enable Server Side Rendering (SSR) Astro has several [SSR adapters](https://docs.astro.build/en/guides/server-side-rendering/). These adapters are used to run your project on the server and handle SSR requests. @@ -86,7 +86,7 @@ In the config file, `output` is set to `server`, meaning every page in the app i For mostly static sites, set `output` to `hybrid`. This allows you to add `export const prerender = false` to any file that needs to be server-rendered on demand. -### Modify Start Script and Astro config +### Modify Start Script and Astro Config Astro builds your project into a `dist` directory. In `standalone` mode, a server starts when the server entry point is executed, which is by default located at `./dist/server/entry.mjs`. @@ -133,7 +133,7 @@ Your app needs to listen on either `0.0.0.0` or `::` to accept traffic. If not c Railway offers multiple ways to deploy your Astro app, depending on your setup and preference. -### One-Click Deploy from a Template +### One-Click Deploy From a Template If you’re looking for the fastest way to get started, the one-click deploy option is ideal. @@ -145,7 +145,7 @@ We highly recommend that [you eject from the template after deployment](/guides/ **Note:** You can also choose from a variety of Astro app templates created by the community. -### Deploy from the CLI +### Deploy From the CLI 1. **Install the Railway CLI**: - Install the CLI and authenticate it using your Railway account. @@ -172,7 +172,7 @@ alt="screenshot of the deployed Astro service" layout="responsive" width={2556} height={2164} quality={100} /> -### Deploy from a GitHub Repo +### Deploy From a GitHub Repo To deploy an Astro app to Railway directly from GitHub, follow the steps below: diff --git a/src/docs/guides/axum.md b/src/docs/guides/axum.md index 78f188ff1..d1cb4a162 100644 --- a/src/docs/guides/axum.md +++ b/src/docs/guides/axum.md @@ -83,7 +83,7 @@ The Router from Axum is used to configure the route, and `tokio::net::TcpListene The asynchronous runtime, provided by the `#[tokio::main]` macro, ensures the server can handle requests efficiently. The `axum::serve` function integrates with the Hyper server to actually process requests. -### Run the Axum App locally +### Run the Axum App Locally Run the following command in the `helloworld` directory via the terminal: @@ -99,7 +99,7 @@ Open your browser and go to `http://localhost:3000` to see your app. Railway offers multiple ways to deploy your Axum app, depending on your setup and preference. -### One-Click Deploy from a Template +### One-Click Deploy From a Template If you’re looking for the fastest way to get started, the one-click deploy option is ideal. @@ -111,7 +111,7 @@ We highly recommend that [you eject from the template after deployment](/guides/ **Note:** You can also choose from a variety of Axum templates created by the community. -### Deploy from the CLI +### Deploy From the CLI 1. **Install the Railway CLI**: - Install the CLI and authenticate it using your Railway account. @@ -141,7 +141,7 @@ alt="screenshot of the deployed Axum service" layout="responsive" width={1982} height={1822} quality={100} /> -### Deploy from a GitHub Repo +### Deploy From a GitHub Repo To deploy an Axum app to Railway directly from GitHub, follow the steps below: @@ -200,4 +200,4 @@ This guide covers the main deployment options on Railway. Choose the approach th Explore these resources to learn how you can maximize your experience with Railway: - [Add a Database Service](/guides/build-a-database-service) -- [Monitor your app](/guides/monitoring) \ No newline at end of file +- [Monitor your app](/guides/monitoring) diff --git a/src/docs/guides/beego.md b/src/docs/guides/beego.md index 7a9c5e5c3..f8a3aa83f 100644 --- a/src/docs/guides/beego.md +++ b/src/docs/guides/beego.md @@ -103,7 +103,7 @@ Replace this `postgres://username:@localhost/helloworld_dev?sslmode=disable` wit - The `init()` function registers the Postgres driver, registers the Users model, and automatically creates the users table in the database. If any errors occur while inserting users, they are logged. - The `main()` function creates an ORM instance, defines sample user data (first name and last name), inserts the data into the users table, and starts the Beego web server to serve your app. -### Run the Beego App locally +### Run the Beego App Locally To start your app, run: @@ -115,7 +115,7 @@ Once the app is running, open your browser and navigate to `http://localhost:808 In your terminal, you’ll see logs indicating that the user data is being inserted. Head over to your database, and you should see the users table populated with the seeded data. -### Prepare Beego App for deployment +### Prepare Beego App for Deployment 1. Open the `conf/app.conf` file and add an environment variable, `DATABASE_URL` to it. @@ -150,7 +150,7 @@ func init() { Railway offers multiple ways to deploy your Beego app, depending on your setup and preference. -### One-Click Deploy from a Template +### One-Click Deploy From a Template If you’re looking for the fastest way to get started, the one-click deploy option is ideal. @@ -162,7 +162,7 @@ We highly recommend that [you eject from the template after deployment](/guides/ **Note:** You can also choose from a variety of Beego app templates created by the community. -### Deploy from the CLI +### Deploy From the CLI 1. **Install the Railway CLI**: - Install the CLI and authenticate it using your Railway account. @@ -198,7 +198,7 @@ alt="screenshot of the deployed Beego service" layout="responsive" width={2420} height={1986} quality={100} /> -### Deploy from a GitHub Repo +### Deploy From a GitHub Repo To deploy a Beego app to Railway directly from GitHub, follow the steps below: @@ -260,4 +260,4 @@ This guide covers the main deployment options on Railway. Choose the approach th Explore these resources to learn how you can maximize your experience with Railway: - [Add a Database Service](/guides/build-a-database-service) -- [Monitor your app](/guides/monitoring) \ No newline at end of file +- [Monitor your app](/guides/monitoring) diff --git a/src/docs/guides/build-configuration.md b/src/docs/guides/build-configuration.md index f4671b6f0..8e5206ef4 100644 --- a/src/docs/guides/build-configuration.md +++ b/src/docs/guides/build-configuration.md @@ -82,7 +82,7 @@ Here are a few examples of common use-cases: _Note, negations will only work if you include files in a preceding rule._ -## Install a specific package using Nixpacks +## Install a Specific Package Using Nixpacks When using Nixpacks, you can install specific packages by defining them in a nixpacks configuration file. For example: @@ -118,11 +118,11 @@ HTTP traffic. _Note: Some buildpacks specify a default start command_ -## Specify a custom install command +## Specify a Custom Install Command We do not expose a way to configure a custom install command in the UI, but you can control this using [config as code](/reference/config-as-code#nixpacks-plan) (see Nixpacks Plan -> Install Command). -## Disable build layer caching +## Disable Build Layer Caching By default, Railway will cache build layers to provide faster build times. If you have a need to disable this behavior, set the following environment variable in your service: @@ -130,8 +130,8 @@ By default, Railway will cache build layers to provide faster build times. If y NO_CACHE=1 ``` -## Why isn't my build using cache? +## Why Isn't My Build Using Cache? Since Railway's build system scales up and down in response to demand, cache hit on builds is not guaranteed. -If you have a need for faster builds and rely on build cache to satisfy that requirement, you should consider creating a pipeline to build your own image and deploy your image directly. \ No newline at end of file +If you have a need for faster builds and rely on build cache to satisfy that requirement, you should consider creating a pipeline to build your own image and deploy your image directly. diff --git a/src/docs/guides/cli.md b/src/docs/guides/cli.md index c1a47ea36..0a011e653 100644 --- a/src/docs/guides/cli.md +++ b/src/docs/guides/cli.md @@ -63,7 +63,7 @@ The Railway CLI is an open source project on [GitHub](https://github.com/railway You can build a binary [from source](https://github.com/railwayapp/cli#from-source) if you wish. -## Authenticating with the CLI +## Authenticating With the CLI Before you can use the Railway CLI, you must authenticate the CLI to your Railway account: ```bash diff --git a/src/docs/guides/create.md b/src/docs/guides/create.md index ea7da415b..e7b89ff74 100644 --- a/src/docs/guides/create.md +++ b/src/docs/guides/create.md @@ -50,7 +50,7 @@ quality={80} If you do not see the `Edit Scope` option, you may still need to connect GitHub to your Railway account. -### Convert a Project into a Template +### Convert a Project Into a Template You can also convert an existing project into a ready-made Template for other users. @@ -122,7 +122,7 @@ The current template variable functions are: 2. `randomInt(min?: number, max?: number)`: Generates a random integer between min and max (defaults to 0 and 100) -## Managing your Templates +## Managing Your Templates You can see all of your templates on your Account's Template page. Templates are separated into Personal and Published templates. diff --git a/src/docs/guides/cron-jobs.md b/src/docs/guides/cron-jobs.md index 2db19ea00..ca00dce69 100644 --- a/src/docs/guides/cron-jobs.md +++ b/src/docs/guides/cron-jobs.md @@ -16,10 +16,10 @@ To configure a cron job - Find more information about cron jobs, including examples of cron expressions, in the [reference page for Cron Jobs](/reference/cron-jobs). -## Why isn't my Cron running as scheduled? +## Why Isn't My Cron Running as Scheduled? An important requirement of a service that runs as a Cron, is that it terminates on completion and leaves no open resources. If the code that runs in your Cron service does not exit, subsequent executions of the Cron will be skipped. If you see that a previous execution of your Cron service has a status of `Active`, the execution is still running and any new executions will not be run. -For more information on Service execution requirements, see the [Service Execution Requirements](/reference/cron-jobs#service-execution-requirements) section of the Cron Jobs reference. \ No newline at end of file +For more information on Service execution requirements, see the [Service Execution Requirements](/reference/cron-jobs#service-execution-requirements) section of the Cron Jobs reference. diff --git a/src/docs/guides/django.md b/src/docs/guides/django.md index a83862c5d..125ad33dc 100644 --- a/src/docs/guides/django.md +++ b/src/docs/guides/django.md @@ -169,7 +169,7 @@ Railway offers multiple ways to deploy your Django app, depending on your setup 2. [Using the CLI](#deploy-from-the-cli). 3. [From a GitHub repository](#deploy-from-a-github-repo). -## One-Click Deploy from a Template +## One-Click Deploy From a Template If you’re looking for the fastest way to get started, the one-click deploy option is ideal. It sets up a Django app along with a Postgres database. @@ -179,7 +179,7 @@ Click the button below to begin: After deploying, we recommend that you [eject from the template](/guides/deploy#eject-from-template-repository) to create a copy of the repository under your own GitHub account. This will give you full control over the source code and project. -## Deploy from the CLI +## Deploy From the CLI To deploy the Django app using the Railway CLI, please follow the steps: @@ -226,7 +226,7 @@ layout="responsive" width={2783} height={2135} quality={100} /> -## Deploy from a GitHub Repo +## Deploy From a GitHub Repo To deploy the Django app to Railway, start by pushing the app to a GitHub repo. Once that’s set up, follow the steps below to complete the deployment process. @@ -350,4 +350,4 @@ width={2752} height={2094} quality={100} /> Explore these resources to learn how you can maximize your experience with Railway: - [Monitoring](/guides/monitoring) -- [Deployments](/guides/deployments) \ No newline at end of file +- [Deployments](/guides/deployments) diff --git a/src/docs/guides/environments.md b/src/docs/guides/environments.md index d8de91d96..4ae51415f 100644 --- a/src/docs/guides/environments.md +++ b/src/docs/guides/environments.md @@ -44,7 +44,7 @@ width={480} height={156} quality={80} /> When enabled, a temporary environment is spun up to support the Pull Request deploy. These environments are deleted as soon as these PRs are merged or closed. -### How come my GitHub PR won't deploy? +### How Come my GitHub PR Won't Deploy? Railway will not deploy a PR branch from a user who is not in your team or invited to your project without their associated GitHub account. diff --git a/src/docs/guides/express.md b/src/docs/guides/express.md index df929ce76..653d3e454 100644 --- a/src/docs/guides/express.md +++ b/src/docs/guides/express.md @@ -102,7 +102,7 @@ block content 5. Run the app again to see your changes in action! -### Prepare Express App for deployment +### Prepare Express App for Deployment In the `routes/index.js` file, replace the hardcoded Postgres database URL with an environment variable: @@ -118,7 +118,7 @@ This allows the app to dynamically pull the correct database configuration from Railway offers multiple ways to deploy your Express app, depending on your setup and preference. -### One-Click Deploy from a Template +### One-Click Deploy From a Template If you’re looking for the fastest way to get started with Express, Pug and connected to a Postgres database, the one-click deploy option is ideal. @@ -134,7 +134,7 @@ We highly recommend that [you eject from the template after deployment](/guides/ **Note:** You can also choose from a variety of Express app templates created by the community. -### Deploy from the CLI +### Deploy From the CLI 1. **Install the Railway CLI**: - Install the CLI and authenticate it using your Railway account. @@ -170,7 +170,7 @@ alt="screenshot of the deployed Express service" layout="responsive" width={2194} height={1652} quality={100} /> -### Deploy from a GitHub Repo +### Deploy From a GitHub Repo To deploy an Express app to Railway directly from GitHub, follow the steps below: diff --git a/src/docs/guides/fastapi.md b/src/docs/guides/fastapi.md index 4154cf89e..e64de52db 100644 --- a/src/docs/guides/fastapi.md +++ b/src/docs/guides/fastapi.md @@ -11,7 +11,7 @@ This guide covers how to deploy a FastAPI app on Railway in four ways: 3. [Using the CLI](#deploy-from-the-cli). 4. [Using a Dockerfile](#use-a-dockerfile). -## One-Click Deploy from a Template +## One-Click Deploy From a Template [![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/template/-NvLj4) @@ -19,7 +19,7 @@ We highly recommend that [you eject from the template after deployment](/guides/ **Note:** You can also choose from a variety of FastAPI app templates created by the community. -## Deploy from a GitHub Repo +## Deploy From a GitHub Repo To deploy a FastAPI app on Railway directly from GitHub, follow the steps below: @@ -44,7 +44,7 @@ The FastAPI app is run via a railway.toml or railway.json file, alongside your code. -## Deploy from the CLI +## Deploy From the CLI 1. Install and authenticate with the CLI. 2. Clone the forked fastapi GitHub repo and `cd` into the directory. diff --git a/src/docs/guides/fastify.md b/src/docs/guides/fastify.md index 3ee6507a1..7055cc230 100644 --- a/src/docs/guides/fastify.md +++ b/src/docs/guides/fastify.md @@ -11,7 +11,7 @@ This guide covers how to deploy a Fastify app on Railway in four ways: 3. [Using the CLI](#deploy-from-the-cli). 4. [Using a Dockerfile](#use-a-dockerfile). -## One-Click Deploy from a Template +## One-Click Deploy From a Template [![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/new/template/ZZ50Bj) @@ -19,7 +19,7 @@ We highly recommend that [you eject from the template after deployment](/guides/ **Note:** You can also choose from a variety of Fastify app templates created by the community. -## Deploy from a GitHub Repo +## Deploy From a GitHub Repo To deploy a Fastify app on Railway directly from GitHub, follow the steps below: @@ -46,7 +46,7 @@ You can find this in the Install and authenticate with the CLI. 2. Clone the forked fastify GitHub repo and `cd` into the directory. diff --git a/src/docs/guides/fixing-common-errors.md b/src/docs/guides/fixing-common-errors.md index dd3bed9ae..f2499ca82 100644 --- a/src/docs/guides/fixing-common-errors.md +++ b/src/docs/guides/fixing-common-errors.md @@ -24,7 +24,7 @@ When deploying to Railway, you may encounter some errors that prevent your application from working as expected. These are descriptions and solutions to errors that users commonly encounter. -## Application failed to respond +## Application Failed to Respond After deploying your application or making changes, you might encounter this screen when accessing your application's domain: diff --git a/src/docs/guides/flask.md b/src/docs/guides/flask.md index 34e5bb9aa..73d21a41b 100644 --- a/src/docs/guides/flask.md +++ b/src/docs/guides/flask.md @@ -70,7 +70,7 @@ def hello(): - The `hello` function returns a plain text message, _"Hello world, welcome to Railway!"_, which is displayed in the browser when the root URL of the app is accessed. -### Run the Flask app locally +### Run the Flask App Locally To run the application, use the `flask` command. @@ -80,7 +80,7 @@ flask --app helloworld run Open your browser and go to `http://127.0.0.1:5000` to see the app running with a local development server. -### Prepare the Flask app for deployment +### Prepare the Flask App for Deployment 1. Run the following command to install a production web server, [gunicorn](https://gunicorn.org): @@ -129,7 +129,7 @@ Railway offers multiple ways to deploy your Flask app, depending on your setup a 2. [Using the CLI](#deploy-from-the-cli). 3. [From a GitHub repository](#deploy-from-a-github-repo). -## One-Click Deploy from a Template +## One-Click Deploy From a Template [![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/template/zUcpux) @@ -137,7 +137,7 @@ We highly recommend that [you eject from the template after deployment](/guides/ **Note:** You can also choose from a variety of Flask app templates created by the community. -## Deploy from the CLI +## Deploy From the CLI 1. **Install the Railway CLI**: - Install the CLI and authenticate it using your Railway account. @@ -165,7 +165,7 @@ alt="screenshot of the deployed Flask service" layout="responsive" width={2164} height={1814} quality={100} /> -## Deploy from a GitHub Repo +## Deploy From a GitHub Repo To deploy a Flask app to Railway directly from GitHub, follow the steps below: diff --git a/src/docs/guides/foundations.md b/src/docs/guides/foundations.md index 111ce80f3..1b45fe42c 100644 --- a/src/docs/guides/foundations.md +++ b/src/docs/guides/foundations.md @@ -16,6 +16,6 @@ To start, you should be familiar with the core components and features of the pl | **CLI** | The CLI is handy for local development, used for things like running services locally using variables stored in Railway, deploying local code repositories, etc. | ||| -The next pages will go through how to create and manage your Projects, Services, Variables and Environments. They will also explain how to use Volumes to persist your data and how to install and use the CLI. +The next pages will go through how to create and manage your Projects, Services, Variables, and Environments. They will also explain how to use Volumes to persist your data and how to install and use the CLI. -If you prefer a crash course, check out our [Quickstart guide](/quick-start)! \ No newline at end of file +If you prefer a crash course, check out our [Quickstart guide](/quick-start)! diff --git a/src/docs/guides/gin.md b/src/docs/guides/gin.md index 9478e1d2e..22a351c25 100644 --- a/src/docs/guides/gin.md +++ b/src/docs/guides/gin.md @@ -11,7 +11,7 @@ This guide covers how to deploy a Gin app on Railway in four ways: 3. [Using the CLI](#deploy-from-the-cli). 4. [Using a Dockerfile](#use-a-dockerfile). -## One-Click Deploy from a Template +## One-Click Deploy From a Template [![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/new/template/dTvvSf) @@ -19,7 +19,7 @@ We highly recommend that [you eject from the template after deployment](/guides/ **Note:** You can also choose from a variety of Gin app templates created by the community. -## Deploy from a GitHub Repo +## Deploy From a GitHub Repo To deploy a Gin app on Railway directly from GitHub, follow the steps below: @@ -40,7 +40,7 @@ alt="screenshot of the deployed gin service showing a hello world API response o layout="responsive" width={2661} height={1019} quality={100} /> -## Deploy from the CLI +## Deploy From the CLI 1. Install and authenticate with the CLI. 2. Clone the forked gin GitHub repo and `cd` into the directory. diff --git a/src/docs/guides/github-autodeploys.md b/src/docs/guides/github-autodeploys.md index a982f6df7..6585cc5e2 100644 --- a/src/docs/guides/github-autodeploys.md +++ b/src/docs/guides/github-autodeploys.md @@ -4,7 +4,7 @@ title: Controlling GitHub Autodeploys [Services that are linked to a GitHub repo](/guides/services#deploying-from-a-github-repo) automatically deploy when new commits are detected in the connected branch. -## Configure the GitHub branch for deployment triggers +## Configure the GitHub Branch for Deployment Triggers To update the branch that triggers automatic deployments, go to your Service Settings and choose the appropriate trigger branch. diff --git a/src/docs/guides/laravel.md b/src/docs/guides/laravel.md index a48529531..48f1733b8 100644 --- a/src/docs/guides/laravel.md +++ b/src/docs/guides/laravel.md @@ -10,7 +10,7 @@ This guide covers how to deploy a Laravel app on Railway in three ways: 2. [From a GitHub repository](#deploy-from-a-github-repo). 3. [Using the CLI](#deploy-from-the-cli). -## One-Click Deploy from a Template +## One-Click Deploy From a Template [![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/new/template/fWEWWf) @@ -18,7 +18,7 @@ This template sets up a basic Laravel application along with a Postgres database We highly recommend that [you eject from the template after deployment](/guides/deploy#eject-from-template-repository) to create a copy of the repo on your GitHub account. -## Deploy from a GitHub Repo +## Deploy From a GitHub Repo To deploy a Laravel app on GitHub to Railway, follow the steps below: @@ -44,7 +44,7 @@ width={2855} height={2109} quality={100} /> **Note**: [Jump to the **Set Up Database, Migrations, Crons and Workers** section](#deploy-via-custom-scripts) to learn how to run your Laravel app along with a Postgres(or MySQL) database, cron jobs, and workers. -## Deploy from the CLI +## Deploy From the CLI If you have your Laravel app locally, you can follow these steps: @@ -201,7 +201,7 @@ To ensure logs and errors appear in Railway’s console or with `railway logs`, railway variables --set "LOG_CHANNEL=errorlog" ``` -## Can I deploy with Laravel Sail? +## Can I Deploy with Laravel Sail? You may be thinking about using [Laravel Sail](https://laravel.com/docs/11.x/sail), which is the standard approach for deploying Laravel applications with Docker. At its core, Sail relies on a `docker-compose.yml` file to manage the environment. However, it's important to note that Railway currently does not support Docker Compose. diff --git a/src/docs/guides/luminus.md b/src/docs/guides/luminus.md index cc4ebde20..1b41b2c3f 100644 --- a/src/docs/guides/luminus.md +++ b/src/docs/guides/luminus.md @@ -29,7 +29,7 @@ A new Luminus app will be provisioned for you in the `helloworld` directory with **Note:** If you use MySQL or another database, you can pass it as an option when trying to create a new app. -### Run the Luminus App locally +### Run the Luminus App Locally Open `dev-config.edn` and add your Postgres database URL like so: @@ -47,7 +47,7 @@ Finally, run `lein run` to launch your app! Open your browser and go to `http://localhost:3000` to see the app. -### Prepare Clojure Luminus App for deployment +### Prepare Clojure Luminus App for Deployment 1. We need to add the `ceshire` library to our dependencies. `cheshire` is a popular JSON encoding/decoding library in Clojure. @@ -90,7 +90,7 @@ It starts by running the JAR file with the `migrate` option to apply database mi Railway offers multiple ways to deploy your Clojure app, depending on your setup and preference. -### One-Click Deploy from a Template +### One-Click Deploy From a Template If you’re looking for the fastest way to get started, the one-click deploy option is ideal. @@ -102,7 +102,7 @@ We highly recommend that [you eject from the template after deployment](/guides/ **Note:** You can also choose from a variety of Clojure app templates created by the community. -### Deploy from the CLI +### Deploy From the CLI 1. **Install the Railway CLI**: - Install the CLI and authenticate it using your Railway account. @@ -138,7 +138,7 @@ alt="screenshot of the deployed Clojure service" layout="responsive" width={2325} height={2187} quality={100} /> -### Deploy from a GitHub Repo +### Deploy From a GitHub Repo To deploy a Clojure Luminus app to Railway directly from GitHub, follow the steps below: diff --git a/src/docs/guides/manage-deployments.md b/src/docs/guides/manage-deployments.md index 8e4db4f2e..c9dac015e 100644 --- a/src/docs/guides/manage-deployments.md +++ b/src/docs/guides/manage-deployments.md @@ -4,7 +4,7 @@ title: Manage Deployments with the Public API Here are some examples to help you get started managing your deployments using the Public API. -### Fetch latest active deployment +### Fetch Latest Active Deployment The query below will fetch the latest active deployment for a service for a specific environment. @@ -28,7 +28,7 @@ query deployments { } ``` -### Restarting a deployment +### Restarting a Deployment The query below will restart the deployment with the specified `id`. @@ -36,4 +36,4 @@ The query below will restart the deployment with the specified `id`. mutation deploymentRestart { deploymentRestart(id: "9d5b1306-e22e-4357-9b3f-cc3b97ed8240") } -``` \ No newline at end of file +``` diff --git a/src/docs/guides/manage-projects.md b/src/docs/guides/manage-projects.md index 4d09688fd..b2216ba4f 100644 --- a/src/docs/guides/manage-projects.md +++ b/src/docs/guides/manage-projects.md @@ -4,7 +4,7 @@ title: Manage Projects with the Public API Here are some examples to help you get started managing your projects using the Public API. -### Fetch all your projects +### Fetch All Your Projects The query below will fetch all your personal projects along with all the services, plugins and environment for them. @@ -47,7 +47,7 @@ query me { } ``` -### Delete a project +### Delete a Project This is a destructive action @@ -57,4 +57,4 @@ The mutation below will delete the project with the specified `id`. mutation projectDelete { projectDelete(id: "5e594338-0faa-415f-b2a7-2b5f2d4ec11a") } -``` \ No newline at end of file +``` diff --git a/src/docs/guides/manage-services.md b/src/docs/guides/manage-services.md index c137188e2..7886b8a39 100644 --- a/src/docs/guides/manage-services.md +++ b/src/docs/guides/manage-services.md @@ -4,7 +4,7 @@ title: Manage Services with the Public API Here are some examples to help you get started managing your services using the Public API. -### Create a new service with a GitHub repo +### Create a New Service With a GitHub Repo The mutation below will create a new service with the specified GitHub repo attached. The response will contain the newly created service. @@ -21,4 +21,4 @@ mutation serviceCreate { id } } -``` \ No newline at end of file +``` diff --git a/src/docs/guides/manage-variables.md b/src/docs/guides/manage-variables.md index 5e9dd5dd7..e476d55f1 100644 --- a/src/docs/guides/manage-variables.md +++ b/src/docs/guides/manage-variables.md @@ -4,7 +4,7 @@ title: Manage Variables with the Public API Here are some examples to help you get started managing your variables using the Public API. -### Fetch variables for a service +### Fetch Variables For a Service The query below will fetch all the variables for a service for a specific environment. The response will contain all the variables in a key/value object. @@ -20,7 +20,7 @@ query variables { } ``` -### Upsert variable for a service +### Upsert Variable For a Service The mutation below will upsert a new variable for the specified service within the specified environment. You can use this to both create and update variables. @@ -38,4 +38,4 @@ mutation variableUpsert { } ) } -``` \ No newline at end of file +``` diff --git a/src/docs/guides/optimize-performance.md b/src/docs/guides/optimize-performance.md index 67f3212e4..b385a7a89 100644 --- a/src/docs/guides/optimize-performance.md +++ b/src/docs/guides/optimize-performance.md @@ -27,7 +27,7 @@ To change the number of replicas per deploy within your service, go to the servi Each replica will be deployed with a Railway-provided environment variable named `RAILWAY_REPLICA_ID` which can be used for logging and monitoring, for example. -### Load Balancing between Replicas +### Load Balancing Between Replicas At the moment, Railway will randomly distribute requests to the replicas of your service. We plan to add more advanced load balancing strategies in the future. If you need more advanced load balancing, you can use an external load balancer such as Cloudflare to distribute traffic between your services. @@ -49,7 +49,7 @@ To choose a different region for your service, go to your service settings and s *Additional regions may be added in the future as Railway continues expanding its infrastructure footprint.* -### Set a default region +### Set a Default Region To set a default, or preferred, region, do so from the command palette. From your project settings: - Type `CMD+K` or `Ctrl+K` to access the command palette @@ -70,4 +70,4 @@ For information on the impact of changing a service's region, see the [Regions r ## Singleton Deploys -By default, Railway maintains only one deploy per service. \ No newline at end of file +By default, Railway maintains only one deploy per service. diff --git a/src/docs/guides/optimize-usage.md b/src/docs/guides/optimize-usage.md index 66f326bb1..2f4c0a884 100644 --- a/src/docs/guides/optimize-usage.md +++ b/src/docs/guides/optimize-usage.md @@ -20,11 +20,11 @@ If you want to set a usage limit for your team, use the account switcher in the If you are on a prepaid plan, you can not directly set a hard limit. Instead the amount of credits you load determines the hard limit. -### Custom email alert +### Custom Email Alert Configure a soft limit by setting a threshold in Custom email alert. When your resource usage reaches the specified amount, we will email you that this threshold has been met and resources continue running. -### Hard limit +### Hard Limit Configure a hard limit to take resources offline once usage meets the specified threshold. @@ -42,12 +42,12 @@ Find more information about Usage Limits in the [reference page](/reference/usag Using [Private Networking](/guides/private-networking) when communicating with other services (such as databases) within your Railway project will help you avoid unnecessary Network Egress costs. -### With databases +### With Databases Communicate with your Railway database over private networking by using the `DATABASE_URL` environment variable, instead of `DATABASE_PUBLIC_URL`: -### With other services +### With Other Services If your Railway services need to communicate with each other, you can find the service's private URL in the service settings: diff --git a/src/docs/guides/private-networking.md b/src/docs/guides/private-networking.md index 57d5f564d..07fbf86b6 100644 --- a/src/docs/guides/private-networking.md +++ b/src/docs/guides/private-networking.md @@ -11,7 +11,7 @@ width={1310} height={420} quality={100} /> By default, all projects have private networking enabled and services will get a new DNS name under the `railway.internal` domain. This DNS name will resolve to the internal IPv6 address of the services within a project. -## Communicating over the private network +## Communicating Over the Private Network To communicate over the private network, there are some specific things to know to be successful. @@ -211,7 +211,7 @@ app := fiber.New(fiber.Config{ -## Changing the service name for DNS +## Changing the Service Name for DNS Within the service settings you can change the service name to which you refer, e.g. `api-1.railway.internal` -> `api-2.railway.internal` diff --git a/src/docs/guides/public-api.md b/src/docs/guides/public-api.md index a0ae7e7b6..efe0b166a 100644 --- a/src/docs/guides/public-api.md +++ b/src/docs/guides/public-api.md @@ -27,7 +27,7 @@ The public API is accessible at the following endpoint: https://backboard.railway.com/graphql/v2 ``` -### Creating a token +### Creating a Token To use the API, you will need an API token. You can create one by visiting the [tokens page](https://railway.com/account/tokens) in your account settings. There are two types of tokens you can create. @@ -36,7 +36,7 @@ alt="New token form" layout="responsive" width={1618 } height={378} quality={80} /> -#### Team token +#### Team Token Select a team in the `Team` dropdown to create a token tied to a team. A team token - - Has access to all the team's resources @@ -44,11 +44,11 @@ Select a team in the `Team` dropdown to create a token tied to a team. A team t *Note that Teams are a Pro feature.* -#### Personal token +#### Personal Token If you do not select a team, the token will be tied to your Railway account and will have access to all your resources. Do not share this token with anyone else. -#### Project token +#### Project Token Project tokens are scoped to a specific environment within a project and can only be used to authenticate requests to that environment. @@ -94,11 +94,11 @@ While building your queries, if you quickly need to copy resource IDs, you can h Railway Command Palette -### The network tab +### The Network Tab If you're unsure about what query/mutation to use for what you are trying to achieve, you can always do the action in the dashboard and look for the request in the network tab. As we use the same API internally, you can simply grab the name and then look for specific query in the introspected schema. -### External resources +### External Resources 1. The [awesome-graphql](https://github.com/chentsulin/awesome-graphql) repository is a great resource for all things GraphQL with implementations available across a variety of languages. 2. The [GraphQL Discord](https://discord.graphql.org/) is the official Discord channel for graphql.org with a lot of active members and specific help channels. @@ -118,4 +118,4 @@ If you run into problems using the API or have any suggestions, feel free to joi ### Rate Limits -Rate limits are enforced on the Public API. For details on the limits visit the [Public API reference page](/reference/public-api#rate-limits). \ No newline at end of file +Rate limits are enforced on the Public API. For details on the limits visit the [Public API reference page](/reference/public-api#rate-limits). diff --git a/src/docs/guides/public-networking.md b/src/docs/guides/public-networking.md index 612eee675..ef0704d73 100644 --- a/src/docs/guides/public-networking.md +++ b/src/docs/guides/public-networking.md @@ -49,7 +49,7 @@ Railway services don't obtain a domain automatically, but it is easy to set one To assign a domain to your service, go to your service's settings, find the Networking -> Public Networking section, and choose `Generate Domain`. -#### Automated prompt +#### Automated Prompt If Railway detects that a deployed service is listening correctly (as described above), you will see a prompt on the service tile in the canvas, and within the service panel. @@ -147,7 +147,7 @@ quality={100} /> You can change the automatically detected or manually set port at any time by clicking the edit icon next to the domain. -## Adding a custom domain +## Adding a Custom Domain When adding a root or apex domain to your Railway service, you must ensure that you add the appropriate DNS record to the domain within your DNS provider. At this time, Railway supports CNAME Flattening and dynamic ALIAS records. @@ -178,7 +178,7 @@ In contrast there are many nameservers that don't support CNAME flattening or dy If your DNS provider doesn't support CNAME Flattening or dynamic ALIAS records at the root, you can also change your domain's nameservers to point to Cloudflare's nameservers. This will allow you to use a CNAME record for the root domain. Follow the instructions listed on Cloudflare's documentation to change your nameservers. -## Adding a root domain with www subdomain to Cloudflare +## Adding a Root Domain With www Subdomain to Cloudflare If you want to add your root domain (e.g., `mydomain.com`) and the `www.` subdomain to Cloudflare and redirect all `www.` traffic to the root domain: @@ -227,7 +227,7 @@ width={700} height={225} quality={100} /> Currently we use a random load balancing strategy for TCP traffic. -## Using HTTP and TCP together +## Using HTTP and TCP Together At the moment, Railway does not support exposing both HTTP and TCP over public networking, in a single service. Therefore, if you have a domain assigned, you will not see the option to enable TCP Proxy, and vice-versa. Meaning, you will need to remove one before you can enable the other. diff --git a/src/docs/guides/services.md b/src/docs/guides/services.md index d46beb1d2..522f5031b 100644 --- a/src/docs/guides/services.md +++ b/src/docs/guides/services.md @@ -6,7 +6,7 @@ A Railway Service is a deployment target for your application. _As you create and manage your services, your changes will be collected in a set of [staged changes](/guides/staged-changes) that you must review and deploy, in order to apply them._ -## Creating A Service +## Creating a Service Create a service by clicking the `New` button in the top right corner of your project canvas, or by typing new service from the **command palette**, accessible via `CMD + K` (Mac) or `Ctrl + K`(Windows). @@ -21,7 +21,7 @@ Services on Railway can be deployed from a GitHub repository, a local directory, To access a service's settings, simply click on the service tile from your project canvas and go to the Settings tab. -## Defining a deployment source +## Defining a Deployment Source If you've created an empty service, or would like to update the source for a deployed service, you can do so in the Service settings. @@ -33,7 +33,7 @@ alt="Screenshot of how to connect a service to a GitHub repo or Docker image" layout="responsive" width={709} height={190} quality={80} /> -### Deploying from a GitHub Repo +### Deploying From a GitHub Repo Define a GitHub repository as your service source by selecting `Connect Repo` and choosing the repository you'd like to deploy. @@ -47,7 +47,7 @@ width={708} height={245} quality={80} /> You must link your Railway account to GitHub, to enable Railway to connect to your GitHub repositories. You can configure the Railway App in GitHub by clicking this link. -### Deploying a public Docker Image +### Deploying a Public Docker Image To deploy a public Docker image, specify the path of the image when prompted in the creation flow. @@ -61,15 +61,19 @@ GitHub Container Registry: - `ghcr.io/railwayapp-templates/postgres-ssl:latest` -Quay.io: - -- `quay.io/username/repo:tag` - GitLab Container Registry: - `registry.gitlab.com/gitlab-cicd15/django-project` -### Deploying a private Docker Image +Microsoft Container Registry: + +- `mcr.microsoft.com/dotnet/aspire-dashboard` + +Quay.io: + +- `quay.io/username/repo:tag` + +### Deploying a Private Docker Image If you'd like to deploy from a private Docker registry, ensure you're on the [Pro plan](pricing/plans#plans). @@ -82,7 +86,7 @@ width={370} height={280} quality={100} /> If deploying an image from GitHub Container Registry, provide a personal access token (classic). -## Deploying from a local directory +## Deploying From a Local Directory [Use the CLI](/guides/cli) to deploy a local directory to a service - diff --git a/src/docs/guides/variables.md b/src/docs/guides/variables.md index 9eedf371e..5c16381e9 100644 --- a/src/docs/guides/variables.md +++ b/src/docs/guides/variables.md @@ -15,7 +15,7 @@ In Railway, there is also a notion of configuration variables which allow you to _Adding, updating, or removing variables, results in a set of [staged changes](/guides/staged-changes) that you must review and deploy, in order to apply them._ -## Service variables +## Service Variables Variables scoped to individual services can be defined by navigating to a service's "Variables" tab. @@ -24,7 +24,7 @@ alt="Screenshot of Variables Pane" layout="responsive" width={2026} height={933} quality={100} /> -#### Define a service variable +#### Define a Service Variable From a service's variables tab, click on `New Variable` to enter your variable into a form field, or use the `RAW Editor` to paste the contents of your `.env` or json-formatted file. @@ -37,11 +37,11 @@ alt="Screenshot of Shared Variables Settings" layout="responsive" width={2402} height={1388} quality={100} /> -#### Define a shared variable +#### Define a Shared Variable From your Project Settings -> Shared Variables page, choose the Environment, enter the variable name and value, and click `Add`. -#### Use a shared variable +#### Use a Shared Variable To use a shared variable, either click the Share button from the Project Settings -> Shared Variables menu and select the services with which to share, or visit the Variables tab within the service itself and click "Shared Variable". @@ -55,7 +55,7 @@ When using reference variables, you also have access to [Railway-provided variab Railway's [template syntax](/reference/variables#template-syntax) is used when defining reference variables. -### Referencing a Shared variable +### Referencing a Shared Variable Use the following syntax to reference a shared variable: @@ -66,7 +66,7 @@ Use the following syntax to reference a shared variable: - `API_KEY=${{shared.API_KEY}}` -### Referencing another service's variable +### Referencing Another Service's Variable Use the following syntax to reference variables in another service: @@ -85,7 +85,7 @@ Use the following syntax to reference variables in another service: -### Referencing variables in the same service +### Referencing Variables in the Same Service Use the following syntax to reference variables in the same service: @@ -111,7 +111,7 @@ width={2408} height={1150} quality={100} /> Railway provides the ability to seal variable values for extra security. When a variable is sealed, its value is provided to builds and deployments but is never visible in the UI nor can it be retrieved via the API. -### Sealing a variable +### Sealing a Variable To seal an existing variable, click the 3-dot menu on the right-side of the variable and choose the "Seal" option. @@ -120,7 +120,7 @@ alt="Seal an existing variable" layout="responsive" width={502} height={533} quality={100} /> -### Updating a sealed variable +### Updating a Sealed Variable Sealed variables can be updated by clicking the edit option in the 3-dot menu just like normal variables but they cannot be updated via the Raw Editor. @@ -150,7 +150,7 @@ For an exhaustive list, please check out the [Variables Reference](/reference/va Variables can span multiple lines. Press `Control + Enter` (`Cmd + Enter` on Mac) in the variable value input field to add a newline, or simply type a newline in the Raw Editor. -## Using Variables in your services +## Using Variables in Your Services Variables are made available at runtime as environment variables. To use them in your application, simply use the interface appropriate for your language to retrieve environment variables. @@ -160,7 +160,7 @@ For example, in a node app - process.env.VARIABLE_NAME; ``` -#### Local development +#### Local Development Using the Railway CLI, you can run your code locally with the environment variables configured in your Railway project. diff --git a/src/docs/guides/webhooks.md b/src/docs/guides/webhooks.md index 6d2d7e975..448d2bd50 100644 --- a/src/docs/guides/webhooks.md +++ b/src/docs/guides/webhooks.md @@ -26,7 +26,7 @@ Webhooks contain Muxers which will automatically identify webhook URLs and trans - Discord - Slack -## Setting up a webhook for Discord +## Setting Up a Webhook for Discord Discord supports integrating directly with webhooks. To enable this on a server you will need to be an admin or otherwise have the appropriate permissions. @@ -45,7 +45,7 @@ At this point, the Discord Muxer will identify the URL and change the payload to You are now done! When your project deploys again, that Discord channel will get updates on the deployment! -## Setting up a webhook for Slack +## Setting Up a Webhook for Slack Slack supports integrating directly with webhooks. diff --git a/src/docs/overview/about-railway.md b/src/docs/overview/about-railway.md index c77e72e43..b4f6953c6 100644 --- a/src/docs/overview/about-railway.md +++ b/src/docs/overview/about-railway.md @@ -10,7 +10,7 @@ Point Railway to your deployment source and let the platform handle the rest. #### Flexible Deployment Sources - **Code Repositories**: With or without Dockerfiles. Railway will build an [OCI compliant image](https://opencontainers.org/) based on what you provide. -- **Docker Images**: Directly from Docker Hub, GitHub Container Registry, GitLab Container Registry, or Quay.io. We support public and private image registries. +- **Docker Images**: Directly from Docker Hub, GitHub Container Registry, GitLab Container Registry, Microsoft Container Registry, or Quay.io. We support public and private image registries. #### Hassle-Free Setup - **Sane Defaults**: Out of the box, your project is deployed with sane defaults to get you up and running as fast as possible. @@ -36,4 +36,4 @@ Railway operates with an emphasis on reliability and transparency. We utilize a ## Book a Demo -Looking to adopt Railway for your business? We'd love to chat! [Click here to book some time with us](https://cal.com/team/railway/demonew). \ No newline at end of file +Looking to adopt Railway for your business? We'd love to chat! [Click here to book some time with us](https://cal.com/team/railway/demonew). diff --git a/src/docs/overview/advanced-concepts.md b/src/docs/overview/advanced-concepts.md index 556ddfad2..318ea23d2 100644 --- a/src/docs/overview/advanced-concepts.md +++ b/src/docs/overview/advanced-concepts.md @@ -65,7 +65,7 @@ Within a service and environment, you can specify which branch to auto-deploy to ## Observability -Any build or deployment logs emitted to standard output or standard error `( eg. console.log(...))` is captured by Railway so you can view or search for it later. +Any build or deployment logs emitted to standard output or standard error `( eg. console.log(...))` are captured by Railway so you can view or search for it later. ### Service Logs @@ -73,4 +73,4 @@ Logs for a specific service deployment are available from a service's view in yo ### Centralized Logs -Logs for all of the services in a project can be viewed together in our Observability tool within a project. This is useful for debugging more general problems that may span multiple services. \ No newline at end of file +Logs for all of the services in a project can be viewed together in our Observability tool within a project. This is useful for debugging more general problems that may span multiple services. diff --git a/src/docs/overview/best-practices.md b/src/docs/overview/best-practices.md index c10a0ca8b..0a2a56250 100644 --- a/src/docs/overview/best-practices.md +++ b/src/docs/overview/best-practices.md @@ -2,7 +2,7 @@ title: Best Practices --- {/** -To keep constancy we want each topic to follow the same convention - +To keep consistency we want each topic to follow the same convention - - What? - When? - Do X. @@ -13,7 +13,7 @@ To keep constancy we want each topic to follow the same convention - Railway is a highly versatile platform, offering various ways to use it, though some may be less optimal than others for most use cases. These topics aim to help you maximize both your potential and the platform's capabilities. -## Use Private networking when possible +## Use Private Networking When Possible [Private networking](/reference/private-networking) allows services within a [project](/overview/the-basics#project--project-canvas) to communicate internally without the need to expose them [publicly](/guides/public-networking), while also providing faster communication and increased throughput. @@ -28,7 +28,7 @@ width={1048} height={818} quality={100} /> Screenshot showing the use of the `RAILWAY_PRIVATE_DOMAIN` [variable](/reference/variables#railway-provided-variables) being used via [referencing](/guides/variables#reference-variables). -## Deploying related Services into the same Project +## Deploying Related Services Into the Same Project In Railway, a [project](/overview/the-basics#project--project-canvas) serves as a container for organizing infrastructure. It can encompass an application stack, a group of [services](/overview/the-basics#services), or even multiple service groups. @@ -49,17 +49,17 @@ width={1048} height={818} quality={100} /> Screenshot showing related services within a project and their connection links. -## Use Reference variables where applicable +## Use Reference Variables Where Applicable [Reference variables](/guides/variables#reference-variables) allow you to dynamically reference another variable, either from a variable set on the current [service](/overview/the-basics#services) or from another service in the same [project](/overview/the-basics#project--project-canvas). -Rather than manually copying, pasting, and hardcoding variables like a public domain or those from another service, you can use reference variables to build them dynamically. Example `VITE_BACKEND_HOST=${{Backend.RAILWAY_PUBLIC_DOMAIN}}` +Rather than manually copying, pasting, and hard-coding variables like a public domain or those from another service, you can use reference variables to build them dynamically. Example `VITE_BACKEND_HOST=${{Backend.RAILWAY_PUBLIC_DOMAIN}}` -This approach is better than hardcoding variables, as it keeps your variable values in sync. Change your [public domain](/reference/public-domains)? The variable updates. Change your [TCP proxy](/reference/tcp-proxy)? The variable updates. +This approach is better than hard-coding variables, as it keeps your variable values in sync. Change your [public domain](/reference/public-domains)? The variable updates. Change your [TCP proxy](/reference/tcp-proxy)? The variable updates. screenshot of a service showing the use of reference variables -Screenshot showing a reference variable used to reference the Backend's domain. \ No newline at end of file +Screenshot showing a reference variable used to reference the Backend's domain. diff --git a/src/docs/reference/databases.md b/src/docs/reference/databases.md index d26644bd4..e0c130f67 100644 --- a/src/docs/reference/databases.md +++ b/src/docs/reference/databases.md @@ -6,7 +6,7 @@ Railway can support any type of Database service required for an application sta Databases can be deployed into a Railway project from a template, or by creating one through the service creation flow. -## How Database Services work in Railway +## How Database Services Work in Railway Below are the core concepts to understand when working with databases in Railway. diff --git a/src/docs/reference/nixpacks.md b/src/docs/reference/nixpacks.md index aa86e7f70..8fee4fc51 100644 --- a/src/docs/reference/nixpacks.md +++ b/src/docs/reference/nixpacks.md @@ -8,23 +8,30 @@ zero configuration. ## Supported Languages Currently, we support the following languages out of the box: -- [NodeJS](https://nixpacks.com/docs/providers/node) - [Bun](https://nixpacks.com/docs/providers/node#bun-support) (Experimental) +- [Clojure](https://nixpacks.com/docs/providers/clojure) +- [Cobol](https://nixpacks.com/docs/providers/cobol) +- [Crystal](https://nixpacks.com/docs/providers/crystal) +- [C#/.NET](https://nixpacks.com/docs/providers/csharp) +- [Dart](https://nixpacks.com/docs/providers/dart) - [Deno](https://nixpacks.com/docs/providers/deno) -- [Python](https://nixpacks.com/docs/providers/python) +- [Elixir](https://nixpacks.com/docs/providers/elixir) +- [F#](https://nixpacks.com/docs/providers/fsharp) +- [Gleam](https://nixpacks.com/providers/gleam) - [Go](https://nixpacks.com/docs/providers/go) -- [Ruby](https://nixpacks.com/docs/providers/ruby) -- [PHP](https://nixpacks.com/docs/providers/php) +- [Haskell](https://nixpacks.com/docs/providers/haskell) - [Java](https://nixpacks.com/docs/providers/java) +- [Lunatic](https://nixpacks.com/docs/providers/lunatic) +- [Node](https://nixpacks.com/docs/providers/node) +- [PHP](https://nixpacks.com/docs/providers/php) +- [Python](https://nixpacks.com/docs/providers/python) +- [Ruby](https://nixpacks.com/docs/providers/ruby) - [Rust](https://nixpacks.com/docs/providers/rust) -- [.NET](https://nixpacks.com/docs/providers/csharp) -- [Haskell](https://nixpacks.com/docs/providers/haskell) -- [Crystal](https://nixpacks.com/docs/providers/crystal) +- [Scheme](https://nixpacks.com/docs/providers/scheme) +- [Staticfile](https://nixpacks.com/docs/providers/staticfile) - [Swift](https://nixpacks.com/docs/providers/swift) +- [Scala](https://nixpacks.com/docs/providers/scala) - [Zig](https://nixpacks.com/docs/providers/zig-lang) -- [Dart](https://nixpacks.com/docs/providers/dart) -- [Staticfile](https://nixpacks.com/docs/providers/staticfile) -- [Elixir](https://nixpacks.com/docs/providers/elixir) ## The Build Table / Build Plan @@ -41,4 +48,4 @@ width={1365} height={790} quality={80} /> ## Support If you have a language or feature that you want us to support, please don't hesitate to -reach out on Discord or on the Nixpacks repo. \ No newline at end of file +reach out on Discord or on the Nixpacks repo. diff --git a/src/docs/reference/pricing/plans.md b/src/docs/reference/pricing/plans.md index bb17b8e4e..4e4560f6c 100644 --- a/src/docs/reference/pricing/plans.md +++ b/src/docs/reference/pricing/plans.md @@ -56,7 +56,7 @@ You are only charged for the resources you actually use, which helps prevent run To learn more about controlling your resource usage costs, read our FAQ on [How do I prevent spending more than I want to?](/reference/pricing/faqs#how-do-i-prevent-spending-more-than-i-want-to) -## Included usage +## Included Usage The Hobby plan includes $5 of resource usage per month. @@ -71,7 +71,7 @@ Included resource usage is reset at the end of every billing cycle and does not The Pro plan **does not include any usage credits**. You will be billed for resource usage on top of the full subscription fee. -### Additional services +### Additional Services Railway offers [Business Class Support](/reference/support#business-class) as an add-on service to the Pro plan. Business Class Support is included with Enterprise. [Contact us](mailto:team@railway.com) to get started. @@ -79,7 +79,7 @@ Railway offers [Business Class Support](/reference/support#business-class) as an Credits are available on Railway as a payment method for Hobby plan users who prefer to pre-pay for their subscription and usage on Railway. -### Credits as a payment method +### Credits As a Payment Method On Railway, you can pay for your Hobby plan subscription and resource usage with pre-purchased credits. When using credits as a payment method, keep in mind that: @@ -89,11 +89,11 @@ On Railway, you can pay for your Hobby plan subscription and resource usage with Credits as a payment method is only available for Hobby plan users. -### Purchasing credits +### Purchasing Credits You can purchase credits from your account's [usage page](https://railway.com/account/usage). -### One-time grant of credits on the Free Trial +### One-time Grant of Credits on the Free Trial Users who create a new Trial account receive a free one-time grant of $5. Railway will expend any free credit before consuming any purchased credits. Trial plan users are unable to purchase credits without upgrading to the Hobby plan. diff --git a/src/docs/reference/public-api.md b/src/docs/reference/public-api.md index ab9c6d925..53866e6ac 100644 --- a/src/docs/reference/public-api.md +++ b/src/docs/reference/public-api.md @@ -25,15 +25,15 @@ curl --request POST \ ``` -### Team token +### Team Token Team tokens are tied to a team and will have access to all the team's resources. This token cannot be used to access your personal resources on Railway so feel free to share it with your teammates. -### Personal token +### Personal Token Non-team tokens will be tied to your Railway account and will have access to all your resources. Do not share this token with anyone else. -#### Project token +#### Project Token Project tokens are scoped to a specific environment within a project and can only be used to authenticate requests to that environment. diff --git a/src/docs/reference/services.md b/src/docs/reference/services.md index 5213ab9c7..579517f8a 100644 --- a/src/docs/reference/services.md +++ b/src/docs/reference/services.md @@ -10,11 +10,11 @@ Each service keeps a log of [deployment attempts](/reference/deployments) and [p ## Types of Services -#### Persistent services +#### Persistent Services Services that are always running. Examples include web applications, backend APIs, message queues, database services, etc. -#### Scheduled jobs +#### Scheduled Jobs Services that are run until completion, on a defined schedule, also called [Cron Jobs](/reference/cron-jobs). diff --git a/src/docs/reference/usage-limits.md b/src/docs/reference/usage-limits.md index 068ea3bca..004288882 100644 --- a/src/docs/reference/usage-limits.md +++ b/src/docs/reference/usage-limits.md @@ -4,7 +4,7 @@ title: Usage Limits Usage Limits allow you to set a maximum limit on your usage for a billing cycle. If your resource usage for the billing cycle exceeds the limit you configured, we will shut down your workloads to prevent them from incurring further resource usage. -## Configuring usage limits +## Configuring Usage Limits Usage Limits Modal @@ -12,11 +12,11 @@ Visit your [account usage page](https://railway.com/account/usage) to set the us The link above takes you to the usage page for your personal account. If you want to set a usage limit for your team, you can use the account switcher in the top left corner of your dashboard to access the team's usage page. -## Custom email alert +## Custom Email Alert You can think of this as a _soft limit_. When your resource usage reaches the specified amount, we will email you that this threshold has been met. Your resources will remain unaffected. -## Hard limit +## Hard Limit Once your resource usage hits the specified hard limit, all your workloads will be taken offline to prevent them from incurring further resource usage. Think of the hard limit as the absolute maximum amount you're willing to spend on your infrastructure. diff --git a/src/docs/tutorials/add-a-cdn-using-cloudfront.md b/src/docs/tutorials/add-a-cdn-using-cloudfront.md index 2c6406640..96731a73e 100644 --- a/src/docs/tutorials/add-a-cdn-using-cloudfront.md +++ b/src/docs/tutorials/add-a-cdn-using-cloudfront.md @@ -32,7 +32,7 @@ To be successful using this tutorial, you should already have - **Let's get started!** -## 1. Create and Deploy a Fastify server +## 1. Create and Deploy a Fastify Server First, let's create and deploy a simple Fastify server using the [Railway CLI](guides/cli#installing-the-cli) @@ -322,4 +322,4 @@ This is a *very* simple tutorial covering the most basic steps to implement Clou We recommend checking out these resources to start: - [What is a CDN?](https://aws.amazon.com/what-is/cdn/) - [What is caching?](https://www.cloudflare.com/learning/cdn/what-is-caching/) -- [CDN vs Caching](https://www.fastly.com/blog/leveraging-browser-cache-fastlys-cdn/) \ No newline at end of file +- [CDN vs Caching](https://www.fastly.com/blog/leveraging-browser-cache-fastlys-cdn/) diff --git a/src/docs/tutorials/deploying-a-monorepo.md b/src/docs/tutorials/deploying-a-monorepo.md index 31c63ced2..8f51591aa 100644 --- a/src/docs/tutorials/deploying-a-monorepo.md +++ b/src/docs/tutorials/deploying-a-monorepo.md @@ -6,7 +6,7 @@ title: Deploying a Monorepo to Railway A monorepo is a project directory structure in which multiple, co-dependent codebases (such as a frontend and a backend) are maintained within the same repository, and in some cases, share common packages. -## About this Tutorial +## About This Tutorial Deploying a monorepo in Railway requires some extra configuration to get the applications up and running. @@ -46,7 +46,7 @@ The backend, built with [Go](https://go.dev/), will stream quotes that will be d **Let's get started!** -## 1. Create a new empty project +## 1. Create a New Empty Project - From [your dashboard](https://railway.com/dashboard) click `+ New Project` @@ -64,7 +64,7 @@ width={345.5} height={388} quality={100} /> **Note:** We chose an empty project instead of deploying from a GitHub repo since we want to set up the project before deploying. -## 2. Project setup +## 2. Project Setup - Give the project an applicable name, this makes the project recognizable in your dashboard. You can do this in the Settings tab on the top right of the page. @@ -75,7 +75,7 @@ width={1381} height={731} quality={100} /> - Click `Update` -## 3. Service creation +## 3. Service Creation - Add **two** new **empty** services from the `+ Create` button in the top right of the project canvas. @@ -111,7 +111,7 @@ width={766} height={450} quality={100} /> - Click the `Deploy` button to create these two services. -## 4. Domain setup +## 4. Domain Setup Both of these services will need to be exposed publicly, so let's add public domains to both of them - @@ -126,7 +126,7 @@ width={1381} height={760} quality={100} /> - Do these steps for both services, so that they both have public domains. -## 5. Variable setup +## 5. Variable Setup For our example monorepo the Frontend service needs a `VITE_BACKEND_HOST` variable, and our backend needs an `ALLOWED_ORIGINS` variable. @@ -173,7 +173,7 @@ width={1386} height={760} quality={100} /> - See a list of additional variables [here](https://docs.railway.com/reference/variables#railway-provided-variables). -## 6. Directory setup +## 6. Directory Setup Both of our apps deploy from subdirectories of our monorepo, so we need to tell Railway where they are located. @@ -219,4 +219,4 @@ width={1386} height={760} quality={100} /> ## Conclusion -Congratulations! You have setup a project, setup services, added variables and deployed your monorepo project to Railway. The Frontend service should be accessible on its public domain to access the deployed website. \ No newline at end of file +Congratulations! You have setup a project, setup services, added variables and deployed your monorepo project to Railway. The Frontend service should be accessible on its public domain to access the deployed website. diff --git a/src/docs/tutorials/migrate-from-heroku.md b/src/docs/tutorials/migrate-from-heroku.md index f5d61c0fc..cba027d18 100644 --- a/src/docs/tutorials/migrate-from-heroku.md +++ b/src/docs/tutorials/migrate-from-heroku.md @@ -19,7 +19,7 @@ In your terminal, ensure your current working directory is the same directory wh This is important so that as you complete the following steps, the [Railway CLI](/reference/cli-api) is properly linked. -## 1. Login to Railway from the CLI +## 1. Login to Railway From the CLI Ensure your CLI is authenticated to your Railway account: ```bash @@ -101,4 +101,4 @@ For more advanced operations, like migrating your databases from Heroku to Railw ## Need Help? -If you run into any issues, or would like help with your migrations, we would be more than happy to answer your questions on our Discord or over email at [team@railway.com](mailto:team@railway.com). \ No newline at end of file +If you run into any issues, or would like help with your migrations, we would be more than happy to answer your questions on our Discord or over email at [team@railway.com](mailto:team@railway.com). diff --git a/src/docs/tutorials/set-up-a-tailscale-subnet-router.md b/src/docs/tutorials/set-up-a-tailscale-subnet-router.md index 251cc3760..738df64cd 100644 --- a/src/docs/tutorials/set-up-a-tailscale-subnet-router.md +++ b/src/docs/tutorials/set-up-a-tailscale-subnet-router.md @@ -186,7 +186,7 @@ width={602} height={526} quality={100} /> **That is it for all the configurations needed, you can now call any service via its private domain and port just as if you were another service within the private network!** -## 5. Connecting to a service on the private network (Bonus) +## 5. Connecting To a Service On the Private Network (Bonus) During this tutorial we have used Postgres as an example service, so let's finally connect to it via its private domain and port! @@ -211,4 +211,4 @@ We recommend reviewing the following Tailscale documentation: - [Auth keys](https://tailscale.com/kb/1085/auth-keys) - [Machine names](https://tailscale.com/kb/1098/machine-names) - [DNS](https://tailscale.com/kb/1054/dns?q=dns#use-dns-settings-in-the-admin-console) -- [Tailscale FAQ](https://tailscale.com/kb/1366/faq) \ No newline at end of file +- [Tailscale FAQ](https://tailscale.com/kb/1366/faq)