Sign inSign up

bootgly/bootgly.kit

By bootgly

โ€ขUpdated 12 days ago

๐Ÿงฐ The Bootgly PHP Framework, ready to run โ€” framework + Console + Web + the kit entry

Image
Languages & frameworks
Developer tools
Web servers
0

122

bootgly/bootgly.kit repository overview

โ ๐Ÿงฐ Bootgly Kit โ€” the Bootgly PHP Framework, ready to run

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. latest is published only from the first stable release, so while Bootgly is in pre-release an untagged bootgly/bootgly.kit does not resolve. Use the channel alias (:rc, :beta) or an exact version (:1.0.0-rc.1).

โ ๐Ÿš€ First run โ€” the wizard

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.

โ ๐Ÿ”™ Back into the kit

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)

โ โšก Run a project

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.

โ ๐Ÿ“ฆ What is inside

/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.

โ ๐Ÿ”„ Upgrading

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.

โ ๐Ÿท๏ธ Tags

Release kindTags
stable 1.2.31.2.3 ยท 1.2 ยท 1 ยท latest
pre-release 1.0.0-rc.11.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.

โ ๐Ÿงญ The three Bootgly images

ImageWhat it is
bootgly/bootgly.kitthe 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

Tag summary

Content type

Image

Digest

sha256:55f315881โ€ฆ

Size

201.4 MB

Last updated

12 days ago

docker pull bootgly/bootgly.kit:rc