Helps your development process with Docker Compose by asking nicely :)
On macOS, install it via Homebrew:
brew tap icalialabs/formulae
brew install plis
On other systems you can:
- Download the executable for your system from the Releases Page
- Place it on any of the paths reachable in $PATH
plis start [services-optional]: Starts a docker-compose project, with the following extra functionality:- If some or all of the requested project's containers are missing, issues a
docker-compose up -dcommand. - If all of the requested project's containers are present, issues a
docker-compose startcommand.
- If some or all of the requested project's containers are missing, issues a
plis attach [service_name]: It figures out the given service's container, and attaches the console to it.plis run [service_name] [command]: It runs the given command:- If there's a running container for the given service, it executes it issuing a
docker exec -ticommand. - If there are no running containers for the given service, it executes it issuing a
docker-compose run --rmcommand.
- If there's a running container for the given service, it executes it issuing a
# Start a docker-compose project:
plis start
# Restart a service:
plis restart web
# Attach the console to a service:
plis attach web
# Run a command on an existing or new container:
plis run web rails c
# Stop a service:
plis stop web
-
buildcommand to invoke the docker-compose build command. - Split up the big
plis.gofile. -
check contextcommand to list the files that will pass to the Docker build context. -
startcommand with just one service should attach to the container immediately. (i.e.:plis start webstarts a rails web container and attaches to it, mimicking the behavior of runningrails serveron the host) - Change the
runcommand to usedocker-compose execinstead ofdocker execwhenever a running container is already available. - Copy (from existing templates/examples) or generate blank dotenv files referenced in the Compose file.
- Install Docker (for Mac/Windows or native for Linux) if it is missing.
- Make
plis start github.com/some_org/some_dockerized_appclone the project and run it. -
upgradecommand that upgradesplisto the newest version. -
prunecommand to invokedocker system prune.