https://docs.devwithlando.io
1. Pull a repo that already has a
2. Or init a local codebase with a
Lando is for developers who want to:
- Quickly specify and painlessly spin up the services and tools needed to develop their projects.
- Specify these local development dependencies in a per-project, lives-in-git config file called
.lando.yml
- Automate complex build steps, testing setups, deployments or other repeated-more-than-once workflows
- Avoid the built-in-masochism of directly using
docker
ordocker-compose
It's a free, open source, cross-platform, local development environment and DevOps tool built on Docker container technology and developed by Tandem. Designed to work with most major languages, frameworks and services, Lando provides an easy way for developers of all types to specify simple or complex requirements for their projects, and then quickly get to work on them. Think of it as your local development's dependency management and automation tool. It can even be installed right beside an old Kalabox installation with no interference, or used as a complete upgrade-replacement.
With Lando you can also...
- Easily mimic your production environment locally.
- Standardize your teams dev environments and tooling on OSX, Windows and Linux.
- Integrate with hosting providers like Pantheon
- Easily customize or extend tooling, deployment options and basically any other functionality.
- Free yourself from the tyranny of inferior local development products.
For the more technically curious, Lando is actually 2 separate abstraction layers built on top of Docker Compose.
Begin by checking out
Then try out one of our preconfigured recipe start states
Or build up from a base language
And then mix in additional auxiliary services
- apache
- elasticsearch
- mailhog
- mariadb
- memcached
- mongo
- mssql
- mysql
- nginx
- phpmyadmin
- postgres
- redis
- solr
- tomcat
- varnish
And then get some pro workflow dialed
- Using Composer to Manage a Project
- Lando and CI
- Lando, Pantheon, CI, and Behat (BDD)
- Killer D8 Workflow with Platform.sh
And then try out some advanced stuff
- Adding additional services
- Adding additional tooling
- Adding additional routes
- Adding additional events
- Setting up front end tooling
- Accessing services (eg your database) from the host
- Importing SQL databases
- Exporting SQL databases
And then dive deep into reference materials
Or TL;DR
A developer should be able to get a running site and the tools needed to develop that site with a single, short config file called
.lando.yml
that lives in the root directory of your project and a few lando
commands.
.lando.yml
1. Pull a repo that already has a git clone myproject.git
cd myproject
lando start
lando
recipe
2. Or init a local codebase with a cd /path/to/my/local/code
lando init
lando start
Note: Lando will not spin up a new codebase for you unless you init with either the
pantheon
or github
method (see below). Otherwise, remember to always have an already existing project to init from.3. Or pull from GitHub or Pantheon
mkdir -p mysite
cd mysite
lando init pantheon | lando init github
lando start
You can also easily configure a
lando.yml
recipename: myproject
recipe: lamp
config:
php: '7.1'
webroot: www
database: postgres:9.6
config:
php: config/php.ini
or go totally nuts and scaffold out a custom stack
name: myproject
recipe: lamp
config:
php: '7.1'
webroot: www
database: postgres:9.6
config:
php: config/php.ini
events:
post-start:
- appserver: echo SOMECOMMAND
- echo SOMETHINGELSE
post-mycustomthing:
- echo TEST
services:
node:
type: node:6.10
globals:
grunt-cli: "latest"
run:
- cd /app && npm install --production
appserver:
run:
- cd /app && composer install
mailhog:
type: mailhog
hogfrom:
- appserver
cache:
type: memcached:1.4
mem: 128
search:
type: solr:5.5
core: hard
tooling:
node:
service: node
npm:
service: node
grunt:
service: node
mycustomthing:
service: appserver
cmd: ps
Security Issues
If you have discovered a security issue with Lando, please contact the Lando Security Team directly atsecurity@devwithlando.io. We manage security issues separately in a private repository until the issue has been resolved. Even if you're not sure if it's a security problem, please contact the security team before filing an issue, blogging, or tweeting about it.
from https://github.com/lando/lando
No comments:
Post a Comment