a poor man's gitops
Find a file
Christian Hennevogl 208eed8048 fix(dc-ops): ensure proper quoting in script
- Quote variables in `dirname` to prevent word splitting
- Use quotes around `$LINE` in `grep` to handle spaces
- Quote `cd` paths to handle directories with spaces
- Quote `docker compose` file argument to handle file names with spaces
🤖
2023-12-18 10:58:13 +01:00
.gitignore Genesis 2023-12-15 20:58:36 +01:00
dc-ops fix(dc-ops): ensure proper quoting in script 2023-12-18 10:58:13 +01:00
README.md doc: update usage instructions 2023-12-15 22:55:21 +01:00
stacklist.example Genesis 2023-12-15 20:58:36 +01:00

Docker Compose Ops (dc-ops)

dc-ops is a shell script designed to operations automate the local building and updating of several Docker services. It aims to simplify continuous delivery (CD) processes and infrastructure management in a Docker environment.

How does it work?

  • The script iterates through each line of the stacklist file (skipping comments) or through all cli parameters
  • It fetches the latest changes from the remote git repository and checks if there are new commits
  • If there is a change it pulls the updates from the remote git repository, otherwise the entry is skipped
  • Following this, it runs docker compose up which builds, (re)creates and starts the containers

The stacklist file can list either a directory containing a docker-compose.yml file or a precise docker-compose file (see stacklist.example). Alternatively, the stacklist can also be passed as a list of parameters.

Usage

  • ./dc-ops /path/to/repo /path/to/another-repo /path/with/docker-compose-dev.yml or
  • Update stacklist file and run ./dc-ops (or create a crontab entry)