Hassle-free minimal CI/CD for git repos for docker-based projects.
Features:
- zero configuration for repos by default
- optional automatic TLS by Let’s Encrypt
- optional automatic domain registration by supported providers
- automatic encrypted backup and recover via different providers including plain files or S3
- minimal additional overhead
- multiple repos at once without ports conflicts
#
How does it work
git-pipe does for you:
- Clone/fetch remote repository
- Detect packaging type
- Build package
- Restore backup (if applicable)
- Starts container(s)
- Creates proxy router
- (optional) Registers DNS
- (optional) Generates TLS certificates by Let’s Encrypt HTTP-01 ACME
- (background) Regularly creates backup
- Starts from (1) in case something changes in repo
#
Minimal working example
For installation from binaries:
git-pipe https://github.com/kassambara/wordpress-docker-compose.git
Or for docker installation:
docker run -p 127.0.0.1:8080:80 -v /var/run/docker.sock:/var/run/docker.sock reddec/git-pipe https://github.com/kassambara/wordpress-docker-compose.git
Where:
-p 127.0.0.1:8080:80
- docker instruction to expose port 8080 to localhost-v /var/run/docker.sock:/var/run/docker.sock
- expose docker control socket to git-pipehttps://github.com/kassambara/wordpress-docker-compose.git
- repo to pull and build (literally I picked just random one. Could be several repos)
Check usage section for details.
Wait a bit to finish building and go to
- http://wordpress.wordpress-docker-compose.localhost:8080 - wordpress app
- http://phpmyadmin.wordpress-docker-compose.localhost:8080 - for phpmyadmin app