Satisfy - Satis composer repository manager with a Web UI, in Docker container based on Alpine Linux.
- After container launch, configured repos are synced every
CRON_SYNC_EVERY
seconds (60), as long asCRON_ENABLED
istrue
- If
ADD_HOST_KEYS
istrue
, 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 forgit+ssh
type repos.
component | version |
---|---|
Alpine Linux | 3.20 |
PHP | 8.2 |
Composer | 2.7.9 |
Satisfy | 3.7.0 |
docker build -t satisfy .
docker run -d --rm \
--name satisfy \
-e SSH_PRIVATE_KEY="$(<./id_rsa)" \
-p 8080:80 \
satisfy
docker run -d --rm \
--name satisfy \
-e SSH_PRIVATE_KEY="$(<./id_rsa)" \
-e CRON_SYNC_EVERY=120 \
-p 8080:80 \
anapsix/satisfy
See entrypoint.sh
for more details
option | 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.