Containers (or pods) started from
cli images are responsible for building code for Composer or Node.js based projects.
The image also contains database
clis for both MariaDB and PostgreSQL.
This Dockerfile is intended to be used as a base for any
cli needs within Lagoon.
- 5.6 (available for compatibility, no longer officially supported)
- 7.0 (available for compatibility, no longer officially supported)
- 7.2 (available for compatibility, no longer officially supported)
- 7.3 (available for compatibility, no longer officially supported)
- 7.4 Dockerfile -
- 8.0 Dockerfile -
- 8.1 Dockerfile -
All PHP versions use their own Dockerfiles.
This image is prepared to be used on Lagoon. There are therefore some things already done:
- Folder permissions are automatically adapted with
fix-permissions, so this image will work with a random user.
COMPOSER_ALLOW_SUPERUSER=1removes warning about use of Composer as root.
80-shell-timeout.shscript checks if containers are running in a Kubernetes environment and then set a 10 minutes timeout to idle
clicontainers use an SSH key injected by Lagoon or defined into
Included cli tools#
The included cli tools are:
composerversion 1.9.0 (changeable via
node.jsverison 17 (as of Mar 2022)
Change Node.js Version#
By default this image ships with the
nodejs-current package (v17 as of Mar 2022). If you need another version you can remove the current version and install the one of your choice. For example, to install Node.js 16, modify your dockerfile to include:
RUN apk del nodejs-current \ && apk add --no-cache nodejs=~16
Environment variables allow some configuration to be customised in a repeatable way.
||64M||Controls the max allowed packet for the MySql client.|
Changing an environment variable#
Environment variables can be changed in the
x-environment: &default-environment MARIADB_MAX_ALLOWED_PACKET: 128M service: cli: environment: << : *default-environment