mirror of
https://github.com/sablierapp/sablier.git
synced 2025-12-21 13:23:03 +01:00
docs: updated all versions in documentation
This commit is contained in:
@@ -4,7 +4,6 @@
|
|||||||
- [Configuration](/configuration)
|
- [Configuration](/configuration)
|
||||||
- [Strategies](/strategies)
|
- [Strategies](/strategies)
|
||||||
- [Themes](/themes)
|
- [Themes](/themes)
|
||||||
- [FAQ](/faq)
|
|
||||||
- [Versioning](/versioning)
|
- [Versioning](/versioning)
|
||||||
- **Providers**
|
- **Providers**
|
||||||
- [Overview](/providers/overview)
|
- [Overview](/providers/overview)
|
||||||
|
|||||||
@@ -1,95 +0,0 @@
|
|||||||
# Documentation for Sablier
|
|
||||||
|
|
||||||
<a name="documentation-for-api-endpoints"></a>
|
|
||||||
## Documentation for API Endpoints
|
|
||||||
|
|
||||||
All URIs are relative to *http://localhost:10000*
|
|
||||||
|
|
||||||
| Class | Method | HTTP request | Description |
|
|
||||||
|------------ | ------------- | ------------- | -------------|
|
|
||||||
| *ScaleApi* | [**scaleBlocking**](Apis/ScaleApi.md#scaleblocking) | **GET** /api/strategies/blocking | Hangs the request until the services are ready |
|
|
||||||
*ScaleApi* | [**scaleDynamic**](Apis/ScaleApi.md#scaledynamic) | **GET** /api/strategies/dynamic | The waiting page for the given services |
|
|
||||||
| *ThemeApi* | [**getTheme**](Apis/ThemeApi.md#gettheme) | **GET** /api/strategies/dynamoc/themes | |
|
|
||||||
|
|
||||||
|
|
||||||
<a name="documentation-for-models"></a>
|
|
||||||
## Documentation for Models
|
|
||||||
|
|
||||||
- [instance](./Models/instance.md)
|
|
||||||
- [session](./Models/session.md)
|
|
||||||
- [status](./Models/status.md)
|
|
||||||
- [themes](./Models/themes.md)
|
|
||||||
|
|
||||||
|
|
||||||
<a name="documentation-for-authorization"></a>
|
|
||||||
## Documentation for Authorization
|
|
||||||
|
|
||||||
All endpoints do not require authorization.
|
|
||||||
|
|
||||||
## API
|
|
||||||
|
|
||||||
To run the following examples you can create two containers:
|
|
||||||
|
|
||||||
- `docker create --name nginx nginx`
|
|
||||||
- `docker create --name apache httpd`
|
|
||||||
|
|
||||||
### GET `/api/strategies/dynamic`
|
|
||||||
|
|
||||||
**Description**: The `/api/strategies/dynamic` endpoint allows you to request a waiting page for multiple instances
|
|
||||||
|
|
||||||
| Parameter | Value | Description |
|
|
||||||
| -------------------------------- | -------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
|
|
||||||
| `names` | array of string | The instances to be started (cannot be used with `group` parameter) |
|
|
||||||
| `group` | string | The instance group to be started (using `sablier.group=mygroup` labels) (cannot be used with `names` parameter) |
|
|
||||||
| `session_duration` | duration [time.ParseDuration](https://pkg.go.dev/time#ParseDuration) | The session duration for all services, which will reset at each subsequent calls |
|
|
||||||
| `show_details` *(optional)* | bool | The details about instances |
|
|
||||||
| `display_name` *(optional)* | string | The display name |
|
|
||||||
| `theme` *(optional)* | string | The theme to use |
|
|
||||||
| `refresh_frequency` *(optional)* | duration [time.ParseDuration](https://pkg.go.dev/time#ParseDuration) | The refresh frequency for the loading page |
|
|
||||||
|
|
||||||
Go to http://localhost:10000/api/strategies/dynamic?names=nginx&names=apache&session_duration=5m&show_details=true&display_name=example&theme=hacker-terminal&refresh_frequency=10s and you should see
|
|
||||||
|
|
||||||
A special header `X-Sablier-Session-Status` is returned and will have the value `ready` if all instances are ready. Or else `not-ready`.
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### GET `/api/strategies/blocking`
|
|
||||||
|
|
||||||
**Description**: The `/api/strategies/blocking` endpoint allows you to wait until the instances are ready
|
|
||||||
|
|
||||||
| Parameter | Value | Description |
|
|
||||||
| ---------------------- | -------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
|
|
||||||
| `names` | array of string | The instances to be started (cannot be used with `group` parameter) |
|
|
||||||
| `group` | string | The instance group to be started (using `sablier.group=mygroup` labels) (cannot be used with `names` parameter) |
|
|
||||||
| `session_duration` | duration [time.ParseDuration](https://pkg.go.dev/time#ParseDuration) | The session duration for all services, which will reset at each subsequent calls |
|
|
||||||
| `timeout` *(optional)* | duration [time.ParseDuration](https://pkg.go.dev/time#ParseDuration) | The maximum time to wait for instances to be ready |
|
|
||||||
|
|
||||||
A special header `X-Sablier-Session-Status` is returned and will have the value `ready` if all instances are ready. Or else `not-ready`.
|
|
||||||
|
|
||||||
**Curl example**
|
|
||||||
```bash
|
|
||||||
curl -X GET -v "http://localhost:10000/api/strategies/blocking?names=nginx&names=apache&session_duration=5m&timeout=5s"
|
|
||||||
* Trying 127.0.0.1:10000...
|
|
||||||
* Connected to localhost (127.0.0.1) port 10000 (#0)
|
|
||||||
> GET /api/strategies/blocking?names=nginx&names=apache&session_duration=5m&timeout=30s HTTP/1.1
|
|
||||||
> Host: localhost:10000
|
|
||||||
> User-Agent: curl/7.74.0
|
|
||||||
> Accept: */*
|
|
||||||
>
|
|
||||||
* Mark bundle as not supporting multiuse
|
|
||||||
< HTTP/1.1 200 OK
|
|
||||||
< Content-Type: application/json; charset=utf-8
|
|
||||||
< X-Sablier-Session-Status: ready
|
|
||||||
< Date: Mon, 14 Nov 2022 19:20:50 GMT
|
|
||||||
< Content-Length: 245
|
|
||||||
<
|
|
||||||
{"session":
|
|
||||||
{"instances":
|
|
||||||
[
|
|
||||||
{"instance":{"name":"nginx","currentReplicas":1,"desiredReplicas":1,"status":"ready"},"error":null},
|
|
||||||
{"instance":{"name":"apache","currentReplicas":1,"desiredReplicas":1,"status":"ready"},"error":null}
|
|
||||||
],
|
|
||||||
"status":"ready"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 44 KiB |
@@ -1,3 +0,0 @@
|
|||||||
# Frequenty Asked Questions
|
|
||||||
|
|
||||||
This page is still under construction. Feel free to contribute by raising an issue about a specific cqustion, or by adding a question and an answer about something which is frequently asked in the issues.
|
|
||||||
@@ -36,7 +36,7 @@ Suppose this is your initial setup with Caddy. You have your reverse proxy with
|
|||||||
```yaml
|
```yaml
|
||||||
services:
|
services:
|
||||||
proxy:
|
proxy:
|
||||||
image: caddy:2.6.4
|
image: caddy:2.8.4
|
||||||
ports:
|
ports:
|
||||||
- "8080:80"
|
- "8080:80"
|
||||||
volumes:
|
volumes:
|
||||||
@@ -68,7 +68,7 @@ Add the Sablier container in the `docker-compose.yaml` file.
|
|||||||
```yaml
|
```yaml
|
||||||
services:
|
services:
|
||||||
proxy:
|
proxy:
|
||||||
image: caddy:2.6.4
|
image: caddy:2.8.4
|
||||||
ports:
|
ports:
|
||||||
- "8080:80"
|
- "8080:80"
|
||||||
volumes:
|
volumes:
|
||||||
@@ -93,17 +93,17 @@ Because Caddy does not provide any runtime evaluation for the plugins, we need t
|
|||||||
I'll use the provided Dockerfile to build the custom Caddy image.
|
I'll use the provided Dockerfile to build the custom Caddy image.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker build https://github.com/sablierapp/sablier.git#v1.4.0-beta.3:plugins/caddy
|
docker build https://github.com/sablierapp/sablier.git#v1.8.1:plugins/caddy
|
||||||
--build-arg=CADDY_VERSION=2.6.4
|
--build-arg=CADDY_VERSION=2.8.4
|
||||||
-t caddy:2.6.4-with-sablier
|
-t caddy:2.8.4-with-sablier
|
||||||
```
|
```
|
||||||
|
|
||||||
Then change the image to from `caddy:2.6.4` to `caddy:2.6.4-with-sablier`
|
Then change the image to from `caddy:2.8.4` to `caddy:2.8.4-with-sablier`
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
services:
|
services:
|
||||||
proxy:
|
proxy:
|
||||||
image: caddy:2.6.4-with-sablier
|
image: caddy:2.8.4-with-sablier
|
||||||
ports:
|
ports:
|
||||||
- "8080:80"
|
- "8080:80"
|
||||||
volumes:
|
volumes:
|
||||||
@@ -123,7 +123,7 @@ services:
|
|||||||
|
|
||||||
### 4. Configure Caddy to use the Sablier Caddy Plugin on the `whoami` service
|
### 4. Configure Caddy to use the Sablier Caddy Plugin on the `whoami` service
|
||||||
|
|
||||||
This is how you opt-in your services and link them with the plugin.
|
This is how you opt in your services and link them with the plugin.
|
||||||
|
|
||||||
<!-- tabs:start -->
|
<!-- tabs:start -->
|
||||||
|
|
||||||
@@ -145,7 +145,7 @@ services:
|
|||||||
- sablier.group=demo
|
- sablier.group=demo
|
||||||
|
|
||||||
sablier:
|
sablier:
|
||||||
image: sablierapp/sablier:local
|
image: sablierapp/sablier:1.8.1
|
||||||
volumes:
|
volumes:
|
||||||
- '/var/run/docker.sock:/var/run/docker.sock'
|
- '/var/run/docker.sock:/var/run/docker.sock'
|
||||||
```
|
```
|
||||||
@@ -175,4 +175,4 @@ Here we've configured the following things when we're accessing the service on `
|
|||||||
|
|
||||||
<!-- tabs:end -->
|
<!-- tabs:end -->
|
||||||
|
|
||||||
?> We've assigned the group `demo` to the service and we use this to identify the workload i
|
?> We've assigned the group `demo` to the service, and we use this to identify the workload i
|
||||||
@@ -140,7 +140,6 @@
|
|||||||
app: sablier
|
app: sablier
|
||||||
spec:
|
spec:
|
||||||
serviceAccountName: sablier
|
serviceAccountName: sablier
|
||||||
serviceAccount: sablier
|
|
||||||
containers:
|
containers:
|
||||||
- name: sablier
|
- name: sablier
|
||||||
image: sablierapp/sablier:1.8.1
|
image: sablierapp/sablier:1.8.1
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
<meta name="description" content="Description">
|
<meta name="description" content="Description">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
|
||||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsify-themeable@0/dist/css/theme-simple-dark.css">
|
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsify-themeable@0/dist/css/theme-simple-dark.css">
|
||||||
<link rel="stylesheet" href="assets/style.css">
|
|
||||||
<link rel="icon" type="image/x-icon" href="assets/img/favicon.ico">
|
<link rel="icon" type="image/x-icon" href="assets/img/favicon.ico">
|
||||||
<style>
|
<style>
|
||||||
:root {
|
:root {
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ You can install Sablier with the following flavors:
|
|||||||
## Use the Docker image
|
## Use the Docker image
|
||||||
|
|
||||||
- **Docker Hub**: [sablierapp/sablier](https://hub.docker.com/r/sablierapp/sablier)
|
- **Docker Hub**: [sablierapp/sablier](https://hub.docker.com/r/sablierapp/sablier)
|
||||||
- **Github Container Registry**: [ghcr.io/sablierapp/sablier](https://github.com/sablierapp/sablier/pkgs/container/sablier)
|
- **GitHub Container Registry**: [ghcr.io/sablierapp/sablier](https://github.com/sablierapp/sablier/pkgs/container/sablier)
|
||||||
|
|
||||||
Choose one of the Docker images and run it with one sample configuration file:
|
Choose one of the Docker images and run it with one sample configuration file:
|
||||||
|
|
||||||
|
|||||||
@@ -22,21 +22,19 @@ Here I'll show you two options with Docker.
|
|||||||
#### **Using the provided Dockerfile**
|
#### **Using the provided Dockerfile**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker build https://github.com/sablierapp/sablier.git#v1.4.0-beta.3:plugins/caddy
|
docker build https://github.com/sablierapp/sablier.git#v1.8.1:plugins/caddy
|
||||||
--build-arg=CADDY_VERSION=2.6.4
|
--build-arg=CADDY_VERSION=2.8.4
|
||||||
-t caddy:2.6.4-with-sablier
|
-t caddy:2.8.4-with-sablier
|
||||||
```
|
```
|
||||||
|
|
||||||
#### **Updating your Caddy Dockerfile**
|
#### **Updating your Caddy Dockerfile**
|
||||||
|
|
||||||
```docker
|
```docker
|
||||||
ARG CADDY_VERSION=2.6.4
|
ARG CADDY_VERSION=2.8.4
|
||||||
FROM caddy:${CADDY_VERSION}-builder AS builder
|
FROM caddy:${CADDY_VERSION}-builder AS builder
|
||||||
|
|
||||||
ADD https://github.com/sablierapp/sablier.git#v1.4.0-beta.3 /sablier
|
|
||||||
|
|
||||||
RUN xcaddy build \
|
RUN xcaddy build \
|
||||||
--with github.com/sablierapp/sablier/plugins/caddy=/sablier/plugins/caddy
|
--with github.com/sablierapp/sablier/plugins/caddy
|
||||||
|
|
||||||
FROM caddy:${CADDY_VERSION}
|
FROM caddy:${CADDY_VERSION}
|
||||||
|
|
||||||
@@ -73,7 +71,7 @@ You can have the following configuration:
|
|||||||
|
|
||||||
### Exemple with a minimal configuration
|
### Exemple with a minimal configuration
|
||||||
|
|
||||||
Almost all options are optional and you can setup very simple rules to use the server default values.
|
Almost all options are optional, and you can set up very simple rules to use the server default values.
|
||||||
|
|
||||||
```Caddyfile
|
```Caddyfile
|
||||||
:80 {
|
:80 {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ The Docker provider communicates with the `docker.sock` socket to start and stop
|
|||||||
|
|
||||||
## Use the Docker provider
|
## Use the Docker provider
|
||||||
|
|
||||||
In order to use the docker provider you can configure the [provider.name](TODO) property.
|
In order to use the docker provider you can configure the [provider.name](../configuration) property.
|
||||||
|
|
||||||
<!-- tabs:start -->
|
<!-- tabs:start -->
|
||||||
|
|
||||||
@@ -61,4 +61,4 @@ services:
|
|||||||
|
|
||||||
If the container defines a Healthcheck, then it will check for healthiness before stating the `ready` status.
|
If the container defines a Healthcheck, then it will check for healthiness before stating the `ready` status.
|
||||||
|
|
||||||
If the containers does not define a Healthcheck, then as soon as the container has the status `started`
|
If the containers do not define a Healthcheck, then as soon as the container has the status `started`
|
||||||
@@ -4,7 +4,7 @@ The Docker Swarm provider communicates with the `docker.sock` socket to scale se
|
|||||||
|
|
||||||
## Use the Docker Swarm provider
|
## Use the Docker Swarm provider
|
||||||
|
|
||||||
In order to use the docker swarm provider you can configure the [provider.name](TODO) property.
|
In order to use the docker swarm provider you can configure the [provider.name](../configuration) property.
|
||||||
|
|
||||||
<!-- tabs:start -->
|
<!-- tabs:start -->
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ Sablier assumes that it is deployed within the Kubernetes cluster to use the Kub
|
|||||||
|
|
||||||
## Use the Kubernetes provider
|
## Use the Kubernetes provider
|
||||||
|
|
||||||
In order to use the kubernetes provider you can configure the [provider.name](TODO) property.
|
In order to use the kubernetes provider you can configure the [provider.name](../configuration) property.
|
||||||
|
|
||||||
<!-- tabs:start -->
|
<!-- tabs:start -->
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user