Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Options:

Commands:
generate Converts a source markdown folder or file to an output folder
serve Continuously serve a documentation folder at http://localhost:5000.
serve Continuously serve a documentation folder at http://localhost:3000.
File systems changes will be reflected without having to restart the server.
```

Expand Down Expand Up @@ -63,10 +63,10 @@ Through the `serve` command you can continuously and partially compile your docu

```bash
docker run -v "./.git:/app/.git" -v "./docs:/app/docs" -v "./.artifacts:/app/.artifacts" \
-p 8080:8080 ghcr.io/elastic/docs-builder:edge serve
-p 3000:3000 ghcr.io/elastic/docs-builder:edge serve
```

Each page is compiled on demand as you browse http://localhost:8080 and is never cached so changes to files and
Each page is compiled on demand as you browse http://localhost:3000 and is never cached so changes to files and
navigation will always be reflected upon refresh.

Note the docker image is `linux-x86` and will be somewhat slower to invoke on OSX due to virtualization.
Expand Down
10 changes: 5 additions & 5 deletions docs/source/contribute/locally.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Follow these steps to contribute to Elastic docs.
```

3. **Run the Binary:**
Use the `serve` command to start serving the documentation at http://localhost:5000. The path to the docset.yml file that you want to build can be specified with `-p`:
Use the `serve` command to start serving the documentation at http://localhost:3000. The path to the docset.yml file that you want to build can be specified with `-p`:
```sh
./docs-builder serve -p ./path/to/docs
```
Expand All @@ -53,7 +53,7 @@ Follow these steps to contribute to Elastic docs.
```

3. **Run the Binary:**
Use the `serve` command to start serving the documentation at http://localhost:5000. The path to the docset.yml file that you want to build can be specified with `-p`:
Use the `serve` command to start serving the documentation at http://localhost:3000. The path to the docset.yml file that you want to build can be specified with `-p`:
```sh
.\docs-builder serve -p ./path/to/docs
```
Expand All @@ -77,7 +77,7 @@ Follow these steps to contribute to Elastic docs.
```

3. **Run the Binary:**
Use the `serve` command to start serving the documentation at http://localhost:5000. The path to the docset.yml file that you want to build can be specified with `-p`:
Use the `serve` command to start serving the documentation at http://localhost:3000. The path to the docset.yml file that you want to build can be specified with `-p`:
```sh
./docs-builder serve -p ./path/to/docs
```
Expand All @@ -101,7 +101,7 @@ git clone https://github.com/elastic/docs-content.git
```

2. **Run the Binary:**
Use the `serve` command to start serving the documentation at http://localhost:5000. The path to the `docset.yml` file that you want to build can be specified with `-p`:
Use the `serve` command to start serving the documentation at http://localhost:3000. The path to the `docset.yml` file that you want to build can be specified with `-p`:
```sh
# macOS/Linux
./docs-builder serve -p ./migration-test
Expand All @@ -110,7 +110,7 @@ git clone https://github.com/elastic/docs-content.git
.\docs-builder serve -p .\migration-test
```

Now you should be able to view the documentation locally by navigating to http://localhost:5000.
Now you should be able to view the documentation locally by navigating to http://localhost:3000.

## Step 4: Open a PR [#step-four]

Expand Down
8 changes: 4 additions & 4 deletions src/docs-builder/Cli/Commands.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,20 +16,20 @@ namespace Documentation.Builder.Cli;
internal class Commands(ILoggerFactory logger, ICoreService githubActionsService)
{
/// <summary>
/// Continuously serve a documentation folder at http://localhost:5000.
/// Continuously serve a documentation folder at http://localhost:3000.
/// File systems changes will be reflected without having to restart the server.
/// </summary>
/// <param name="path">-p, Path to serve the documentation.
/// Defaults to the`{pwd}/docs` folder
/// </param>
/// <param name="port">Port to serve the documentation.</param>
/// <param name="ctx"></param>
[Command("serve")]
public async Task Serve(string? path = null, Cancel ctx = default)
public async Task Serve(string? path = null, int port = 3000, Cancel ctx = default)
{
var host = new DocumentationWebHost(path, logger, new FileSystem());
var host = new DocumentationWebHost(path, port, logger, new FileSystem());
await host.RunAsync(ctx);
await host.StopAsync(ctx);

}

/// <summary>
Expand Down
5 changes: 4 additions & 1 deletion src/docs-builder/Http/DocumentationWebHost.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
using Elastic.Markdown.Diagnostics;
using Elastic.Markdown.IO;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.FileProviders;
Expand All @@ -28,7 +29,7 @@ public class DocumentationWebHost

private readonly BuildContext _context;

public DocumentationWebHost(string? path, ILoggerFactory logger, IFileSystem fileSystem)
public DocumentationWebHost(string? path, int port, ILoggerFactory logger, IFileSystem fileSystem)
{
var builder = WebApplication.CreateSlimBuilder();

Expand All @@ -54,6 +55,8 @@ public DocumentationWebHost(string? path, ILoggerFactory logger, IFileSystem fil

//builder.Services.AddSingleton(logger);

builder.WebHost.UseUrls($"http://localhost:{port}");

_webApplication = builder.Build();
SetUpRoutes();
}
Expand Down
Loading