pilot-playbooks/README.md
2022-07-01 23:17:22 +02:00

69 lines
1.1 KiB
Markdown

# Ansible: Setup App
This playbook installs app from repository and bind Traefik on defined host.
## Manage app
Available playbooks:
+ app-install
+ app-start
+ app-stop
Start by copy then change values of hosts example file :
```bash
$ cp hosts.example.ini hosts.ini
```
Then create a file `vars.json` who contain :
```json
{
"container_name": "myapp",
"repository": "https://git.example.com/vendor/app.git",
"version": "master",
"host": "myapp.example.com",
"dockerfile": "Dockerfile",
"volumes": {
"storage": "/app/storage"
},
"envvars": {
"APP_NAME": "Wonderful",
"APP_ENV": "production"
}
}
```
Then run a playbook:
```bash
$ ansible-playbook -i hosts.ini -e @vars.json playbooks/app-install.yml
```
## Manage database
Available playbooks:
+ db-create
First create a file `dbvars.json` who contain :
```json
{
"container_name": "myappdb",
"envvars": {
"MYSQL_ROOT_PASSWORD": "superpassword",
"MYSQL_DATABASE": "myappdb",
"MYSQL_USER": "user",
"MYSQL_PASSWORD": "password"
}
}
```
Then run a playbook:
```bash
$ ansible-playbook -i hosts.ini -e @dbvars.json playbooks/db-create.yml
```