All Projects β†’ pvtl β†’ docker-dev

pvtl / docker-dev

Licence: MIT License
A local Docker Environment for building PHP applications πŸ”¨

Programming Languages

Dockerfile
14818 projects
shell
77523 projects

Projects that are alternatives of or similar to docker-dev

Dojo
Containerize your development and operations environment
Stars: ✭ 240 (+147.42%)
Mutual labels:  developer-tools, development-environment, development-tools
nanobox-rails
Quickly set up a Ruby on Rails app on Nanobox, the ideal platform for developers. With Nanobox, Rails app developers can set up instant, isolated development environments that can be shared among team members. Rails apps created using Nanobox can be automatically deployed to AWS, Azure, Google Cloud, and other cloud hosts without the need for de…
Stars: ✭ 19 (-80.41%)
Mutual labels:  developer-tools, development-environment, development-tools
nanobox-engine-nodejs
Engine for running Node.js apps on Nanobox
Stars: ✭ 16 (-83.51%)
Mutual labels:  developer-tools, development-environment
Beemo
πŸ€– Centralized configuration layer for dev tools. Beep boop.
Stars: ✭ 100 (+3.09%)
Mutual labels:  developer-tools, development-environment
Devspace
DevSpace - The Fastest Developer Tool for Kubernetes ⚑ Automate your deployment workflow with DevSpace and develop software directly inside Kubernetes.
Stars: ✭ 2,559 (+2538.14%)
Mutual labels:  developer-tools, development-tools
React Builder
βš™ A GUI tool to build your react app in the fastest way with all components and pages with routing.
Stars: ✭ 82 (-15.46%)
Mutual labels:  developer-tools, development-tools
Pric
Simple zero-config tool to create Private Certificate Authority & issue locally-trusted development server certificates with any domain names you'd like. SSL certificates for development purposes.
Stars: ✭ 87 (-10.31%)
Mutual labels:  developer-tools, development-environment
Works For Me
Collection of developer toolkits
Stars: ✭ 131 (+35.05%)
Mutual labels:  developer-tools, development-environment
Ergo
The management of multiple apps running over different ports made easy
Stars: ✭ 452 (+365.98%)
Mutual labels:  developer-tools, development-environment
Docker Mastery For Nodejs
Docker Mastery for Node.js Projects, From a Docker Captain
Stars: ✭ 231 (+138.14%)
Mutual labels:  developer-tools, development-environment
docker-lamp
Alpine docker with lamp (php7)
Stars: ✭ 42 (-56.7%)
Mutual labels:  lamp, lamp-server
Prequel
Prequel for Laravel. Clear and concise database management.
Stars: ✭ 1,141 (+1076.29%)
Mutual labels:  developer-tools, development-environment
Deb Dev Machine
Quickly install common Developer tools, IDE's & Services on Debian 9
Stars: ✭ 63 (-35.05%)
Mutual labels:  developer-tools, development-environment
Swiff
πŸ’ Command line tools for common local ↔ remote server tasks.
Stars: ✭ 87 (-10.31%)
Mutual labels:  developer-tools, development-environment
Git Project
Manage a large number of local git repositories with ease!
Stars: ✭ 14 (-85.57%)
Mutual labels:  developer-tools, development-environment
Nanobox
The ideal platform for developers
Stars: ✭ 1,530 (+1477.32%)
Mutual labels:  developer-tools, development-environment
Table flipper
(β•―Β°β–‘Β°οΌ‰β•―οΈ΅ ┻━┻ A useless gem for table flipping on exceptions πŸ˜’
Stars: ✭ 328 (+238.14%)
Mutual labels:  developer-tools, development-environment
Developer Roadmap Guide 2018
Stars: ✭ 344 (+254.64%)
Mutual labels:  developer-tools, development-environment
Dev Tools
The most popular software developer tools in one app
Stars: ✭ 221 (+127.84%)
Mutual labels:  developer-tools, development-tools
rae
A docker-compose development environment orchestrator
Stars: ✭ 13 (-86.6%)
Mutual labels:  development-environment, development-tools
LAMP LDE

LAMP Local Development Environment on Docker

What is this?   β€”   Installation   β€”   Usage   β€”   Docs


An everyday local development environment for PHP Developers. At Pivotal Agency, we've done a buuunnnch of R&D to find the best local dev tools for our team. This is the result of our hard work. This tool has been put to its paces everyday by our team, we hope it can also help yours.


Intro πŸ‘‹

This is a set of Docker images to spin up a LAMP stack (Linux, Apache, MySQL and PHP) for developing locally. It's perfect for local development because you can very simply add new sites to specified directory and they're magically accessible as a subdomain of your chosen hostname (eg. eg. ~/Sites/info maps to http://info.localhost/).

It includes all the required dependencies for everyday PHP development with common tools like Laravel, Wordpress and Magento (1 & 2). Specifically:

Default:

  • Apache
  • PHP 8.0
    • Composer (latest)
    • Node.js (16.x) & NPM (latest)*
    • Yarn (latest)*
    • PHPCS (with Wordpress code standards added)*
    • Wordpress CLI*
    • ZSH*
  • Mailhog (latest)
  • MariaDB 10.3

Optional:

  • PHP 5.6, 7.0, 7.1, 7.2, 7.3 and 7.4
  • Memcached 1.x
  • Redis 6.x
  • HTTPS (SSL for localhost)
  • Blackfire (latest)

* Available in latest 2x PHP containers

The environment features clever domain mapping to allow you to run code for various platforms. Sites are accessible from the following URLs (by default it's http://<website>.localhost, however APACHE_HOSTNAME can modified in .env to point to a different hostname):


Prerequisites ⚠️

You'll first need to install Docker Desktop (or Docker on Linux).


Installation πŸš€

On Windows, we strongly recommend running these commands inside a WSL2 container for best performance

# Clone the repo
git clone https://github.com/pvtl/docker-dev && cd docker-dev

# Create & update relevant config - For example:
#  - Point sites to your sites directory
#  - Set user/group ID's
#  - Add optional services (eg. extra PHP versions, PHPMyAdmin, Memcached etc)
cp .env.example .env

# Start the environment
docker-compose up -d

# The containers are now running. You can now:
# - Open a website in your browser using <DIRECTORY NAME>.{APACHE_HOSTNAME} (see domain mapping notes above)
# - Open a terminal window into one of the containers, via `docker-compose exec <CONTAINER NAME> bash`

Updating πŸ”„

Open a terminal window, browse to this project's folder and run:

# 1. Pull from Git
git pull
# 2. Erase previous containers
docker-compose down --remove-orphans
# 3. Get latest docker images
docker-compose pull
# 4. Rebuild Dockerfiles from scratch (inc. pull parent images)
docker-compose build --pull --no-cache --parallel
# 5. Start the new env
docker-compose up -d
# 6. Erase any unused containers, images, volumes etc. to free disk space.
docker system prune --volumes

This will also install the latest versions of all tools (eg. PHP, Redis, Node.js etc.)


Common Commands πŸ”₯

The Docker Engine must be running and commands must be run within this repo's root.

Command Description
docker-compose start Start all containers
docker-compose stop Stop all containers (keeps any config changes you've made to the containers)
docker-compose up -d --build --no-cache Recreate all containers from scratch
docker-compose down Tear down all containers (MySQL data and Project files are kept)
docker-compose exec php80-fpm zsh Open a zsh terminal in the PHP 8.0 container
docker-compose logs php80-fpm View all logs for PHP-FPM 8.0
docker-compose ps Show which containers are running

Further Reading

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].