# Comment déployer mon projet Rails ?

https://www.seturack.com/fr/base-de-connaissances/article/how-do-i-deploy-my-rails-project

1. Dans le panneau, ouvrez **Mes serveurs** et cliquez sur votre serveur.
2. Dans l'onglet **Vue d'ensemble**, attendez que la ligne **Application** indique « Ruby on Rails is ready ». La page se rafraîchit toute seule.
3. Ouvrez le lien de la ligne **Adresse du site**. La page d'exemple affiche la version de Rails.

## Travailler sur le projet

[Connectez-vous en SSH](https://www.seturack.com/fr/base-de-connaissances/article/how-to-connect-with-ssh) et passez à l'utilisateur du projet :

`su - app`

`cd ~/uygulama`

`set -a; . /etc/seturack-rails.env; set +a`

`export PATH=$GEM_HOME/bin:$PATH`

Ensuite, `bundle install`, `bin/rails db:migrate` et `bin/rails assets:precompile` fonctionnent. Quand votre code change, lancez `systemctl restart uygulama` en tant que root.

## Bon à savoir

- La base de données est SQLite et se trouve dans le dossier `storage`. Si vous préférez PostgreSQL ou MariaDB, installez-le avec `apt` et modifiez `config/database.yml`.
- Puma écoute sur le port **3000** uniquement à l'intérieur du serveur.

## Votre propre domaine

1. Faites pointer l'enregistrement A de votre domaine vers l'adresse IP de votre serveur.
2. En root, remplacez partout l'ancien nom : `sed -i 's/OLD_NAME/yourdomain.com/g' /etc/caddy/Caddyfile`. `OLD_NAME` est la partie après `https://` dans l'adresse affichée dans le panneau.
3. Lancez `systemctl reload caddy`.

Caddy obtient et renouvelle le certificat tout seul.

Seuls **80**, **443** et **22** pour SSH sont ouverts vers l'extérieur.

**Pas encore de serveur ?** [Commandez un serveur avec Ruby on Rails installé](https://www.seturack.com/fr/rails-vps) : vous choisissez la taille et vous payez ce que vous choisissez.
