mykb/docs/docker.md
Alexander Bocken 9a70969f75
fix dir
2023-07-04 12:37:13 +02:00

35 lines
1.0 KiB
Markdown

# Docker
General tips and tricks around docker, as it's usage has become unavoidable.
## Docker compose as systemd services
You will be able to start any docker compose program via `systemctl start docker-compose@<program>`.
Create the file `/etc/systemd/system/docker-compose@.service` with the following content:
```ini
[Unit]
Description=%i service with docker compose
PartOf=docker.service
After=docker.service
[Service]
Type=oneshot
RemainAfterExit=true
WorkingDirectory=/etc/docker/compose/%i
ExecStart=/usr/bin/docker compose up -d
ExecStop=/usr/bin/docker compose stop
[Install]
WantedBy=multi-user.target
```
Create directories as necessary and place your `docker-compose.yml` in an appropriately named folder (as an example: "myprogram") in `/etc/docker/compose`.
Ergo: Your docker-compose.yml should be in `/etc/docker/compose/myprogram/docker-compose.yml`.
Reload the daemon and start your service:
```sh
systemctl daemon-reload
sysetmctl start docker-compose@myprogram
```
More ideas:
https://gist.github.com/mosquito/b23e1c1e5723a7fd9e6568e5cf91180f