# Deploy
-0. Clone the repository
-1. Install `kamal` (see [Kamal docs](https://kamal-deploy.org/docs/installation/)):
+> [!NOTE]
+> For Kamal v1 with Traefik, see [legacy v0.1.7.1](https://github.com/vladyio/quicktube/tree/v0.1.7.1).
+
+1. Clone the repository
+2. Install `kamal` (see [Kamal docs](https://kamal-deploy.org/docs/installation/)):
`gem install kamal`
-2. Create a `deploy/config.yml` file from sample:
+3. Create a `config/deploy.yml` file from sample:
- `cp deploy/config.yml.sample deploy/config.yml`
-3. Change `deploy/config.yml` to suit your needs
-4. Create a `.env` file from sample:
+ `cp config/deploy.yml.sample config/deploy.yml`
+4. Set values in `config/deploy.yml` to match your setup
+5. Create a `.kamal/secrets` file from sample:
- `cp .env.sample .env`
-5. Change `.env` to suit your needs
-6. Prepare server(s) - everything from copying an SSH key to setting up UFW, users and permissions:
+ `cp .kamal/secrets.sample .kamal/secrets`
+6. Set values in `.kamal/secrets` to match your setup
+7. Prepare server(s) - everything from copying an SSH key to setting up UFW, users and permissions:
```
./bin/prepare_server
```
-7. Finally, deploy:
+8. Finally, deploy:
```
- kamal env push
kamal accessory boot redis
kamal deploy
```
@@ -47,13 +49,12 @@
It's possible to prepare & deploy a custom environment too.
-Make sure you have a `config/deploy.[environment].yml` and `.env.[environment]` files.
+Make sure you have a `config/deploy.[environment].yml` and `.kamal/secrets.[environment]` files.
For example, for a `staging` environment:
./bin/prepare_server staging
- kamal env push -d staging
kamal accessory boot redis -d staging
kamal deploy -d staging.
diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb
index 443239e..3cf6436 100644
--- a/app/views/layouts/application.html.erb
+++ b/app/views/layouts/application.html.erb
@@ -25,11 +25,20 @@