Skip to content

Commit ed5b105

Browse files
committed
Various Docs improvements
1 parent dabf3e5 commit ed5b105

24 files changed

Lines changed: 136 additions & 104 deletions

docs/introduction/how-deploio-works.md

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,19 +28,19 @@ Deploio automatically builds your application using the [Heroku Buildpack](https
2828

2929
##### Release
3030

31-
After a successful build, your application is released. The release includes the build artifact, configuration settings,
31+
After a successful build, your application is released. The release includes the build artifact, configuration settings,
3232
and environment variables. Releases are immutable and versioned.
3333
Deploio also manages secrets and sensitive data securely, differentiating between build and release environment variables.
34-
While release ENV variables are exposed to the running application, build ENV variables are only available during the
34+
While release ENV variables are exposed to the running application, build ENV variables are only available during the
3535
build process and are not included in the final release.
3636

3737
##### Run
3838

3939
Deploio runs your application on a managed Kubernetes cluster, powered by **Nine Kubernetes Engine** (NKE), located in Switzerland. Deployments are automatically rolled out using zero-downtime strategies such as rolling updates and health checks. Applications run in isolated pods, scheduled across nodes provisioned via configurable node pools and machine types. This ensures high availability and scalability.
4040

41-
Apps are exposed to the internet via k8 ingress controllers. Other services are not. All communication is secured with TLS (also internally).
41+
Apps are exposed to the internet via k8s ingress controllers. Other services are not. All communication is secured with TLS (also internally).
4242

43-
While Deploio runs on a scalable Kubernetes infrastructure, your apps don’t autoscale by default. Most apps can live comfortably with vertical scaling — predictable, easy to manage, and fully under your control via code, CI/CD, or manually in the Cockpit. You probably don’t need horizontal scaling, but if you do, We’ve got you. Because we run on real Kubernetes, and we know how to scale things properly. Do you?
43+
While Deploio runs on a scalable Kubernetes infrastructure, your apps don’t autoscale by default. Most apps can live comfortably with vertical scaling — predictable, easy to manage, and fully under your control via code, CI/CD, or manually in the Cockpit. You probably don’t need horizontal scaling, but if you do, we’ve got you. Because we run on real Kubernetes, and we know how to scale things properly. Do you?
4444

4545

4646
For more details on the infrastructure used to run your app, view the Nine Kubernetes Engine documentation [here](https://docs.nine.ch/docs/managed-kubernetes/nke/nine-kubernetes-engine/).
@@ -55,12 +55,14 @@ See the [Code Repository Setup](/user-guide/code-repository-setup.md) page for m
5555

5656
##### Build Automation
5757

58-
Use the official Heroku Cloud Native Buildpacks for languages like Node.js, Ruby, Python, and Go — or define a custom Dockerfile. Builds are cached to speed things up. Configuration isn’t limited to environment variables: Deploio uses a **hierarchical system** that lets you define defaults at the company or project level easily, and override them per app — either in the code or directly in the Cockpit.
58+
Either use the provided official Heroku Cloud Native Buildpacks for languages like Node.js, Ruby, Python, and Go — or define a custom Dockerfile.
59+
Builds are cached to speed things up.
60+
Configuration isn’t limited to environment variables: Deploio uses a **hierarchical system** that lets you define defaults at the company or project level easily, and override them per app — either in the code or directly in the Cockpit.
5961

6062

6163
##### Deployment
6264

63-
Deployments are rolled out through Kubernetes using rolling updates and readiness checks to ensure zero downtimme. Each deployment references a specific container image and configuration version.
65+
Deployments are rolled out through Kubernetes using rolling updates and readiness checks to ensure zero downtime. Each deployment references a specific container image and configuration version.
6466

6567
Deploy jobs can also be configured to execute before a new release is deployed. The rollout of the release will only continue if the deploy job finished successfully. This can be defined in the `.deploio.yaml`. See more information [here](/user-guide/configuring-your-application.md#deploioyaml).
6668

@@ -98,7 +100,7 @@ flowchart TD
98100

99101
A project represents a workspace that contains one or more applications and related services such as databases, Redis instances and object storage. It is a logical grouping of applications and services that share the same codebase, configuration, and deployment settings and billing. Projects are isolated from each other, allowing for better organisation and management of resources.
100102

101-
It is typical that a Project will have an Application running for each environment. But be aware; staging apps can access production services unless access controls are explicitly defined - similar to Heroku.
103+
It is typical that a Project will have an Application running for each environment. But be aware: staging apps can access production services unless access controls are explicitly defined - similar to Heroku.
102104

103105
##### Deployment
104106

@@ -113,4 +115,9 @@ The Deploio web interface, providing a visual dashboard to manage your projects,
113115

114116
The official Deploio CLI tool for developers. It can be used for the whole process; from creating a project to deploying an application. It provides a command-line interface for managing your projects, deployments, and environments. You can use it to trigger builds, manage environments, inspect logs, and control deployments right from your terminal.
115117

118+
##### UI
119+
120+
The Deploio web interface, providing a visual dashboard to manage your resources, view logs, and monitor deployments.
121+
You can access it over at [cockpit.nine.ch](https://cockpit.nine.ch/).
122+
116123
Learn more about the process on [docs.nine.ch](https://docs.nine.ch).

docs/nodejs/quick-start.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ nctl create app nextjs \
6363
This command creates a new application on Deploio using
6464
the [Node.js buildpack](https://paketo.io/docs/reference/nodejs-reference/). The `--git-url` flag specifies the URL of
6565
the Git repository where the application is stored. The optional `--git-sub-path` flag specifies the subdirectory in the
66-
Git repository where the application is located. Finally, the `--env` flag and `--build-env` flag sets the `NODE_ENV`
66+
Git repository where the application is located. Finally, the `--env` flag and `--build-env` flag set the `NODE_ENV`
6767
environment variable to `production`.
6868

6969
::: warning

docs/php/background-jobs.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ equivalent of the instance types for the application. The available sizes can be
3333

3434
## Observing a Worker
3535

36-
The worker's logs are aggregated with the application logs. You can view the all the logs using the `nctl logs` command.
36+
The worker's logs are aggregated with the application logs. You can view all the logs using the `nctl logs` command.
3737
If you wish to only view the logs for the worker, you can filter the logs using the `-t, --type` flag:
3838

3939
```bash

docs/php/continuous-deployment.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,8 @@ flaws:
117117
[//]: # (TODO: There are plans to add the functionality into `nctl` to block the update command until the deployment is finished.)
118118

119119
To circumvent these issues, you might want to add a check that waits for the deployment to finish and then check its
120-
status. A more sophisticated approach including an example of a status check script in Ruby can be found in
121-
.
120+
status. A more sophisticated approach including an example of a status check script in Ruby can be found
121+
[here](/user-guide/ci-cd-integration.md#deployment-feedback-on-the-ci).
122122
This Ruby script can be adapted for your preferred language and setup.
123123

124124
### Troubleshooting

docs/php/database.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -232,8 +232,8 @@ In that shell, run the following command to create the database:
232232
bin/console doctrine:database:create
233233
```
234234

235-
You can verify that this database was created by logging into the database using `psql -U dbadmin -h {FQDN} -d postgres`
236-
and then running the command `\l` to list the databases on the server.
235+
You can verify that this database was created by logging into the database (using `mysql -h {FQDN} -u dbadmin -p`)
236+
and then running the command `SHOW DATABASES;` to list the databases on the server.
237237

238238
> **Alternative:** If you do not use Doctrine or otherwise want to do something differently, make sure that your IP is allowed to connect
239239
> to the database and then use a MySQL client from your machine to create the database. E.g. with the MySQL CLI:

docs/php/key-value-storage.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,11 @@ To fetch information about the key-value store, including the fully qualified do
4848
$ nctl get kvs {application_name}
4949
PROJECT NAME FQDN TLS MEMORY SIZE
5050
my-project {application_name} {application_name}.1234567.keyvaluestore.nineapis.ch true 1Gi
51+
```
5152

5253
Retrieve the password for the key-value store:
5354

55+
```bash
5456
$ nctl get kvs {application_name} --print-token
5557
...password...
5658
```

docs/php/object-storage.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@ description: Guide for configuring S3-compatible object storage for PHP applicat
1212

1313
::: info
1414
Should you require a file upload or a writeable storage, you can use our S3-compatible object storage.
15+
You can use Amazon S3 together with Deploio as you would with any other hosting provider.
16+
If you wish to have a persistent, S3 compatible storage that also runs on Nine's infrastructure
17+
and is directly connected to Deploio, you can use our S3-compatible object storage.
1518
You can see the pricing [here](https://docs.nine.ch/docs/object-storage/manage-buckets-and-users#pricing).
1619
:::
1720

@@ -68,7 +71,7 @@ You will need the access key and the secret key, the user name is not used on th
6871
6972
## Configure your PHP Application
7073
71-
S3 can not be mounted as a local filesystem, so you need a client to let PHP interact with S3. In the example
74+
S3 cannot be mounted as a local filesystem, so you need a client to let PHP interact with S3. In the example
7275
application, we use [Flysystem](https://flysystem.thephpleague.com/docs/) with the
7376
[S3 plugin](https://flysystem.thephpleague.com/docs/adapter/aws-s3-v3/) (which itself uses the AWS SDK for PHP).
7477
The `league/flysystem-bundle` does not support specifying the connection as DSN, therefore we added

docs/php/symfony.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ You can deploy it with `nctl`:
2020
nctl create app symfony \
2121
--git-url=https://github.com/ninech/deploio-examples \
2222
--git-sub-path=php/symfony \
23-
--env="APP_SECRET=$()echo $RANDOM | md5sum | head -c 16)" \
23+
--env="APP_SECRET=$(openssl rand -hex 8 | tr -d '\n')" \
2424
--build-env=BP_PHP_SERVER=nginx \
2525
--build-env=BP_PHP_WEB_DIR=public \
2626
--build-env=BP_COMPOSER_INSTALL_OPTIONS="--ignore-platform-reqs --no-scripts -o"
@@ -30,7 +30,7 @@ nctl create app symfony \
3030

3131
Symfony needs an `APP_SECRET` variable to be defined to a secret value. This is used for security relevant functionality.
3232
While it could be read from a `.env` file, it is more secure to set it as an environment variable.
33-
We set it to an initial value when creating the application. Unless when compromised, the secret should not be changed
33+
We set it to an initial value when creating the application. Unless compromised, the secret should not be changed
3434
anymore later on, otherwise existing user sessions will become invalid.
3535

3636
### Configure the Web Directory

docs/python/quick-start.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ We have a basic Python Django app in our [examples repository](https://github.co
1414
You can deploy it with `nctl`.
1515
The example application shows a random message on every page reload.
1616
The Django admin interface can be used to add messages.
17-
Just visit `https://<URL of app>/admin` to access it and use the credentials which you pass via the env variables below to login.
17+
Just visit `https://<URL of app>/admin` to access it and use the credentials which you pass via the env variables below to log in.
1818
Please also define the `SECRET_KEY` which is needed to secure signed data and should be kept secret.
1919

2020
```bash

docs/ruby/active-storage.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ Deploio needs to verify that you really own a domain name before
182182
it will accept HTTP traffic to your custom host on their side.
183183
So you need to add two DNS records at your DNS provider:
184184
* `CNAME` for your domain to `es34.objects.nineapis.ch`
185-
* `TXT` for record for ownership verification
185+
* `TXT` record for ownership verification
186186

187187
The verification record can be retrieved via `nctl`:
188188

@@ -235,7 +235,7 @@ to replace the host part of the generated and signed URL with your custom host.
235235
The proxy will pick it up and replace the custom host with the Deploio S3 host.
236236
The Nutanix S3 service can then verify the complete URL including signature.
237237

238-
If you want to know more about the how this works, have a look at the lightning talk
238+
If you want to know more about how this works, have a look at the lightning talk
239239
["Deploio S3"](https://docs.google.com/presentation/d/1o5LMgcUcVqqZlIQ5mCWJkD9CvYGFML6V7sQxMFkV6wg/edit?slide=id.g3b1e491c942_0_0#slide=id.g3b1e491c942_0_0).
240240
:::
241241

0 commit comments

Comments
 (0)