PDP is a Docker-based development environment that provides a consistent, maintainable, iterative setup across different machines and servers.
-
Clone this repository:
mkdir $HOME/projects && cd $HOME/projects git clone https://github.com/ldraney/pdp.git cd pdp
-
Make sure docker is install correctly:
./scripts/install-docker.sh
and run setup:
./setup.sh
Follow the prompts to set up your GitHub SSH key and .bash_secrets file.
-
(Optional) Restart your machine to ensure all changes take effect.
-
(Optional) Add the following alias to your host system's ~/.bashrc:
pdp() { local script_path="$HOME/projects/pdp/pdp.sh" if [ -f "$script_path" ]; then "$script_path" "$(pwd)" else echo "PDP script not found at $script_path" fi }
Replace
$HOME/projects/pdp/pdp.sh
with the actual path to your pdp.sh script. -
Source your .bashrc or start a new terminal session:
source ~/.bashrc
Once setting up the bash alias, you can start your development environment from any directory by running:
pdp
This will start a Docker container with your current directory mounted and all your configurations in place.
This system is designed for efficient development with the creator's preferred tools. It has not been extensively tested for modifying root host system files. Use caution when working with system-level changes.
To update your PDP:
- Pull the latest changes from the repository
- Rebuild your Docker image by first running:
docker compose down --rmi all -v
and then pdp
Modify the configuration files in the respective directories (bash, tmux, neovim) to customize your environment. Changes will be reflected in new container instances.