https://github.com/anapsix/docker-satisfy
Satisfy in a box
https://github.com/anapsix/docker-satisfy
composer composer-hosting composer-packages docker-image satisfy
Last synced: about 2 months ago
JSON representation
Satisfy in a box
- Host: GitHub
- URL: https://github.com/anapsix/docker-satisfy
- Owner: anapsix
- License: mit
- Created: 2018-11-18T19:25:40.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-09-11T10:22:51.000Z (9 months ago)
- Last Synced: 2025-03-25T03:34:52.171Z (2 months ago)
- Topics: composer, composer-hosting, composer-packages, docker-image, satisfy
- Language: Shell
- Homepage:
- Size: 14.6 KB
- Stars: 8
- Watchers: 1
- Forks: 10
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Satisfy in Docker
 [][unit]
[][docker hub] [][docker hub][Satisfy][1] - Satis composer repository manager with a Web UI, in Docker container based on Alpine Linux.
## Features
* After container launch, configured repos are synced every `CRON_SYNC_EVERY` seconds (60), as long as `CRON_ENABLED` is `true`
* If `ADD_HOST_KEYS` is `true`, any time new Git repo is added, SSH fingerprints are collected and saved.
* SSH private key can be passed via `SSH_PRIVATE_KEY` to enable sync for `git+ssh` type repos.## Versions
component | version
------------- | -------
Alpine Linux | `3.20`
PHP | `8.2`
Composer | `2.7.9`
Satisfy | `3.7.0`## Build and Run
```
docker build -t satisfy .
docker run -d --rm \
--name satisfy \
-e SSH_PRIVATE_KEY="$(<./id_rsa)" \
-p 8080:80 \
satisfy
```## Run
```
docker run -d --rm \
--name satisfy \
-e SSH_PRIVATE_KEY="$(<./id_rsa)" \
-e CRON_SYNC_EVERY=120 \
-p 8080:80 \
anapsix/satisfy
```## Launch options
See [`entrypoint.sh`][2] for more detailsoption | description
------------------- | --------
`REPO_NAME` | name of your repository, defaults to `myorg/myrepo`
`HOMEPAGE` | url of this repository, defaults to `http://localhost:8080`
`SSH_PRIVATE_KEY` | private SSH key, used to access `git` repos, unused by default
`ADD_HOST_KEYS` | flag to enable watching `satis.json` for `git` repos, also turns on SSH `StrictHostKeyChecking`, defaults to `false`
`CRON_ENABLED` | flag to enable periodic `satis build`, defaults to `true`
`CRON_SYNC_EVERY` | rebuild satis index frequency, in seconds, defaults to `60`Access the Admin UI via http://localhost:8080/admin.
[== Links Reference ==]::
[license]: ./LICENSE
[docker hub]: https://hub.docker.com/r/anapsix/satisfy/ "see it on Docker Hub"
[unit]: https://unit.nginx.org/ "built with Nginx & Nginx Unit"
[1]: https://github.com/ludofleury/satisfy
[2]: ./entrypoint.sh