Deploy and set up LAMP stacks with Ansible
Project description
Lampsible
About
Lampsible - LAMP stacks with Ansible and a super simple CLI. This tool can automate anything from a production ready WordPress site on your VPS to a custom Apache setup on a virtual machine in your local network. .
Requirements
- Local: Unix system with Python 3.8 or newer. Tested on Ubuntu and Gentoo Linux. Might work on macOS, but I haven't tested that. Won't work on Windows.
- Remote: Ubuntu 20 or newer. Might work on older versions, but I doubt it. Support for other distros is planned in a future version.
Installing
Install with Pip: python3 -m pip install lampsible
Alternatively, install from wheel file...: python3 -m pip install /path/to/local/lampsible-SOME_VERSION-py3-none-any.whl
... or from source:
git clone https://github.com/saint-hilaire/lampsible
cd lampsible
python3 -m pip install .
Sample usage
Lampsible is designed to be very simple to use. If you forget some important parameter, Lampsible will prompt you for it, or pick some sensible defaults.
Install Apache on your server:
lampsible someuser@somehost.com apache
Install a production ready WordPress site:
lampsible someuser@somehost.com wordpress \
--ssl-certbot \
--email-for-ssl you@yourdomain.com
Install a production ready Joomla site:
lampsible someuser@somehost.com joomla \
--ssl-certbot \
--email-for-ssl you@yourdomain.com
Install a Laravel app on a test server:
lampsible someuser@somehost.com laravel \
--ssl-certbot \
--test-cert \
--apache-server-admin you@yourdomain.com \
--app-name cool-laravel-app \
--app-build-path /path/to/your/local/cool-laravel-app-0.7rc.tar.gz \
--laravel-artisan-commands key:generate,migrate
Set up a LAMP stack with various custom configuration and a self signed SSL certificate on some local VM:
lampsible someuser@192.168.123.123 lamp-stack \
--ask-remote-sudo \
--ssl-selfsigned \
--database-username dbuser \
--database-name testdb \
--php-version 8.1 \
--apache-vhost-name some-legacy-app \
--apache-document-root /var/www/html/some-legacy-app/some-dir/public \
--php-extensions mysql,xml,mbstring,xdebug,gd
Run lampsible --help
for a full list of options.
Contributing
Please do! I'd be more than happy to see Issues, Pull Requests and any other kind of feedback ;-)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file lampsible-1.3.1.tar.gz
.
File metadata
- Download URL: lampsible-1.3.1.tar.gz
- Upload date:
- Size: 60.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1de80e66284a4f489d512ba2112a1e5db4f8ae4459c29ef21f9e45c5aba8eb94 |
|
MD5 | 5520fdb5af11c75eeb5cc03fdf417804 |
|
BLAKE2b-256 | 5324d199a793bb52ab99f2ebd7c977206a5ffe6e257d04bfb0029166eeb63a9c |
File details
Details for the file lampsible-1.3.1-py3-none-any.whl
.
File metadata
- Download URL: lampsible-1.3.1-py3-none-any.whl
- Upload date:
- Size: 70.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d7c089076704c009ae9a6f1c77631e2d75b739a81c7de831f7a6cb0ac0eaa0d |
|
MD5 | b2c218c2d0c8664bfc5d308ccd1ce759 |
|
BLAKE2b-256 | fcfce9ac543f62ffba212c7a4c2c4bf3f332d2efb5c3b1aa7f3934937e4ba339 |