docker/README.md

72 lines
1.5 KiB
Markdown

# Docker
## Dependencies
- `git-crypt`
## Setup
Setup DNS server for docker in `/etc/docker/daemon.json`:
```config
{
"data-root": "/home/docker",
"dns": ["1.1.1.1", "8.8.8.8", "8.8.4.4"]
}
```
Once DNS are properly setup on host:
1. Create OVH token : <https://www.ovh.com/auth/api/createToken>
+ `Get *`, `Put *`, ...
2. Paste token in `swag/dns-conf/ovh.ini`
### Services
## Create a new service
1. Add the service in `docker-compose.yml`
2. Create the DynHost and id <https://www.ovh.com/manager/#/web/domain/guiotte.fr/dynhost>
3. Add the host in the DDclient configuration `./ddclient/ddclient.conf`
4. Add the nginx proxy configuration in `./swag/nginx/proxy-confs/`
5. Update the local zone in `./bind9/guiotte.db`
6. Restart `bind9` and `swag`: `dcc restart bind9 swag`
## Update MariaDB
After upgrading from one major MySQL/MariaDB release to another, we have to run `mariadb-upgrade` on the services using MariaDB.
### Lychee
```bash
dcc stop lychee
dcc exec lychee-db mariadb-upgrade -u root -p"$(cat lychee-db-root-pw.secret)"
dcc restart lychee-db
dcc up -d lychee
```
### Nextcloud
```bash
dcc stop nextcloud
dcc exec nextcloud-db mariadb-upgrade -u root -p"$(cat nextcloud-db-root-pw.secret)"
dcc restart nextcloud-db
dcc up -d nextcloud
```
## Backup
To backup the named volumes, run:
```shell
./backup.py
```
## Logs
2022-11-02 Created OVH token
2022-09-11 Created taskserver certs for 365 days
2022-06-29 Created OVH token for 30 days