[TOC]
services:
soketi:
type: compose
scanner: false
services:
image: "node:16"
ports:
- "6001:6001"
- "9601:9601"
command: /bin/sh /start
build_as_root:
- npm install -g @soketi/soketi
- |
echo "while [ ! -f /certs/cert.crt ]; do sleep 1; done
while [ ! -f /certs/cert.key ]; do sleep 1; done
soketi start --config /app/soketi.json
" > /start
- chmod a+x /start
services:
unleashdb:
type: postgres
portforward: true
creds:
database: unleash
unleash:
type: compose
app_mount: false
portforward: true
ssl: true
services:
image: unleashorg/unleash-server
depends_on:
- unleashdb
ports:
- "4242:443"
environment:
UNLEASH_URL: "unleash.towardstruth.lndo.site"
DATABASE_HOST: "unleashdb"
DATABASE_NAME: "unleash"
DATABASE_USERNAME: "postgres"
DATABASE_PASSWORD: "user"
DATABASE_PORT: 5432
DATABASE_SSL: "false"
# username: admin
# password: unleash4all
command: "node index.js"
proxy:
unleash:
- unleash.towardstruth.lndo.site:4242
services:
meilisearch:
type: compose
app_mount: false
services:
image: getmeili/meilisearch:latest
command: tini -- /bin/sh -c /meilisearch
ports:
- "7700:7700"
volumes:
- meilisearch:/data.ms
portforward: true
volumes:
meilisearch:
socketi:
s3:
type: compose
services:
image: bitnami/minio:latest
command:
- /opt/bitnami/scripts/minio/entrypoint.sh
- /opt/bitnami/scripts/minio/run.sh
environment:
MINIO_DEFAULT_BUCKETS: "default:public,test:public"
name: mycraftsite
recipe: lamp
config:
webroot: web
php: "8.0"
services:
node:
type: node:16
build:
- "cd $LANDO_MOUNT && yarn"
mail:
type: mailhog
tooling:
node:
service: node
npm:
service: node
yarn:
service: node
craft:
service: appserver
cmd: php craft
The intention of the plugin is to make working with Lando database containers and external tools a little easier. The plugin comes with three Lando 'tasks':
lando dbport
- prints the external port and copies it to the clipboardlando workbench
- opens a connection using the MySQL Workbench GUIlando dbeaver
- opens a connection using the dbeaver GUI
Currently TablePlus and Sequelpro/sequelace are in a pull request and avaialable on our fork: https://github.com/phpsa/lando-db-tools
services:
appserver:
build_as_root:
- "wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-2/wkhtmltox_0.12.6.1-2.bullseye_amd64.deb && apt install -y ./wkhtmltox_0.12.6.1-2.bullseye_amd64.deb && rm ./wkhtmltox_0.12.6.1-2.bullseye_amd64.deb"
export LANDO_ZSH_SITES_DIRECTORY=~/Projects
export LANDO_ZSH_CONFIG_FILE=.lando.yml
function artisan \
craft \
tableplus \
composer \
npm \
node \
php \
start \
restart \
stop \
phpstan \
yarn {
if checkForLandoFile; then
lando "$0" "$@"
else
command "$0" "$@"
fi
}
# Check for the file in the current and parent directories.
checkForLandoFile() {
# Only bother checking for lando within the Sites directory.
if [[ "$PWD/" != "$LANDO_ZSH_SITES_DIRECTORY"/* ]]; then
# Not within $LANDO_ZSH_SITES_DIRECTORY
return 1
fi
local curr_dir="$PWD"
# Checking for file: $LANDO_ZSH_CONFIG_FILE within $LANDO_ZSH_SITES_DIRECTORY...
while [[ "$curr_dir" != "$LANDO_ZSH_SITES_DIRECTORY" ]]; do
if [[ -f "$curr_dir/$LANDO_ZSH_CONFIG_FILE" ]]; then
return 0
fi
curr_dir="${curr_dir:h}"
done
# Could not find $LANDO_ZSH_CONFIG_FILE in the current directory
# or in any of its parents up to $LANDO_ZSH_SITES_DIRECTORY.
return 1
}