A growing number of users have requested the ability to run Shift locally. Whether for privacy reasons or a local Git server, you now have that option using Docker. With Docker, an environment can be created allowing you to run Shift directly on your local machine.
Not familiar with Docker? No worries. You'll be running Shift in three easy steps.
First, download the Docker Community Edition for your platform.
Next, build the Shift image by running the following command:
docker build -t shift https://laravelshift.com/resources/Dockerfile
This downloads the latest
Dockerfile to create the environment for Shift. Depending on your network connection this may take a few minutes to build.
Now you can run Shift with the following command:
docker run -v /path/to/your/project:/project:delegated -e SHIFT_TOKEN=token shift
This will run the Shift Docker image you built. You will need to adjust the options.
-v option creates a file mount between the Docker image and your project files. This is a colon separated value. You must replace the first segment with the full path to the folder containing your Laravel project. For example, this would be the path to the folder containing
-e option sets an environment variable for Shift. In this case, the
SHIFT_TOKEN must be set to the token you received when you purchased your Shift for Docker.
This command performs changes in atomic commits. These commits are made to the current branch. You may checkout another branch before running this command if you would like to perform the upgrade on separate branch.
When this command finishes, your Shift is complete. There will be a
shift.md file in your project root with detailed comments for any additional upgrade steps.
shift.log file will also be present. In you encounter any issues, please email firstname.lastname@example.org for additional support and include this log file.
Ready to upgrade? Chose any Shift to upgrade using Docker.
Sign in with any of the following services to connect Shift with your Laravel project.
Don't use one of these services?
Temporarily push your project to a free, private repository on one of these cloud-based services or upgrade your project locally with Shift for Docker.