๐งฐ The Bootgly PHP Framework, ready to run โ framework + Console + Web + the kit entry
122
bootgly/bootgly.kit is the product: the framework, the Console and Web
platforms, and the kit entry point โ the same thing
curl -fsSL https://bootgly.com/install | bash installs, as an image.
If you want to use Bootgly, this is the image. The framework alone lives in
bootgly/bootglyโ and is meant for building your
own image on top of it.
Name a tag.
latestis published only from the first stable release, so while Bootgly is in pre-release an untaggedbootgly/bootgly.kitdoes not resolve. Use the channel alias (:rc,:beta) or an exact version (:1.0.0-rc.1).
A bare interactive run opens the canonical project installer:
docker run -it --rm \
-v "$PWD/projects:/bootgly/projects" \
-v "$PWD/storage:/bootgly/storage" \
bootgly/bootgly.kit:rc
It asks how to start (from scratch, from a shipped example, or from a Git remote), the project path, the interface โ CLI for the Console platform, WPI for the Web one โ and the metadata. Any explicit command bypasses the wizard.
Mount projects/ and storage/. Both are declared volumes: without a mount the container
filesystem dies with the container, and every fresh docker run is a first run again.
The wizard closes when it is done and, with --rm, the container is deleted with it. Nothing
is lost โ your projects and your data are in the two mounted directories on the host, not in
the container โ but there is no container to "go back into". Every return is a new container
over the same mounts.
Re-running the bare command does not reopen the wizard: the first run leaves a
projects/.initialized marker, which is on the volume, so a plain docker run prints the help
from then on. Use one of these instead:
# a one-off command โ anything explicit goes straight to the CLI
docker run -it --rm -v "$PWD/projects:/bootgly/projects" \
-v "$PWD/storage:/bootgly/storage" bootgly/bootgly.kit:rc projects list
# a shell inside the kit โ the closest thing to "entering" it
docker run -it --rm -v "$PWD/projects:/bootgly/projects" \
-v "$PWD/storage:/bootgly/storage" --entrypoint bash bootgly/bootgly.kit:rc
# the wizard again, on purpose
docker run -it --rm -v "$PWD/projects:/bootgly/projects" \
-v "$PWD/storage:/bootgly/storage" bootgly/bootgly.kit:rc projects create
Prefer a container that stays when you want a long-lived workspace โ drop --rm and give
it a name:
docker run -dit --name bootgly -p 8080:8080 \
-v "$PWD/projects:/bootgly/projects" \
-v "$PWD/storage:/bootgly/storage" \
--entrypoint bash bootgly/bootgly.kit:rc
docker exec -it bootgly bash # enter it, as many times as you like
docker stop bootgly # stop it
docker start -ai bootgly # start and re-enter it
docker rm -f bootgly # throw it away (projects/ and storage/ stay)
docker run --rm -p 8080:8080 \
-v "$PWD/projects:/bootgly/projects" \
-v "$PWD/storage:/bootgly/storage" \
bootgly/bootgly.kit:rc project MyApp start -f
-f keeps the server in the foreground, which is what a container needs โ the server writes
to stdout and drains gracefully on SIGTERM, the signal docker stop sends.
Ports the image exposes: 8082 HTTP ยท 443 HTTPS ยท 8080 TCP ยท 8083/8084 benchmark ยท 9999/udp. Publish the ones your project actually listens on.
/bootgly
โโโ Bootgly/ the framework
โโโ Console/ the Console platform (CLI projects)
โโโ Web/ the Web platform (WPI projects)
โโโ projects/ your projects โ volume
โโโ storage/ runtime working data โ volume
โโโ bootgly the CLI entry point
One kit tag pins all three at once: the image is a git clone of the
bootgly.kitโ repository at its release tag, with
submodules, so it reproduces from the tag alone.
Releases are image tags here, so an upgrade is a pull:
docker pull bootgly/bootgly.kit:<version>
Your projects/ and storage/ volumes are untouched by it โ that is the reason to mount
them. The kit upgrade / downgrade verbs are for a kit installed from git; inside the image
they refuse and point at the tag you should pull instead.
| Release kind | Tags |
|---|---|
stable 1.2.3 | 1.2.3 ยท 1.2 ยท 1 ยท latest |
pre-release 1.0.0-rc.1 | 1.0.0-rc.1 ยท rc |
A pre-release never moves latest or the major/minor aliases: docker pull bootgly/bootgly.kit must never hand unreleased code to somebody who did not ask for it.
Images are linux/amd64 and linux/arm64.
| Image | What it is |
|---|---|
bootgly/bootgly.kit | the product โ framework + Console + Web + the kit entry |
bootgly/bootglyโ | the framework alone โ the ingredient you build your own image on |
bootgly/bootgly_benchmarksโ | the cross-framework benchmark harness, one tag per contender |
๐ Guide: https://docs.bootgly.com/guide/dockerโ ยท ๐ป Source: https://github.com/bootgly/bootgly.kitโ ยท ๐ Framework: https://github.com/bootgly/bootglyโ ยท MIT
Content type
Image
Digest
sha256:55f315881โฆ
Size
201.4 MB
Last updated
12 days ago
docker pull bootgly/bootgly.kit:rc