title: Contributions type: index
If you have questions about how to use Laradock, please direct your questions to the discussion on Gitter. If you believe your question could help others, then consider opening an Issue (it will be labeled as Question
) And you can still seek help on Gitter for it.
If you have an issue or you found a typo in the documentation, you can help us by opening an Issue.
Steps to do before opening an Issue:
Before you submit your issue search the archive, maybe your question was already answered couple hours ago (search in the closed Issues as well).
Decide if the Issue belongs to this project or to Docker itself! or even the tool you are using such as Nginx or MongoDB...
If your issue appears to be a bug, and hasn't been reported, then open a new issue.
This helps us maximize the effort we can spend fixing issues and adding new features, by not reporting duplicate issues.
You can request a new feature by submitting an Issue (it will be labeled as Feature Suggestion
). If you would like to implement a new feature then consider submitting a Pull Request yourself.
Laradock uses Hugo as website generator tool, with the Material Docs theme. You might need to check their docs quickly.
Go the DOCUMENTATION/content
and search for the markdown file you want to edit
Note: Every folder represents a section in the sidebar "Menu". And every page and sidebar has a weight
number to show it's position in the site.
To update the sidebar or add a new section to it, you can edit this DOCUMENTATION/config.toml
toml file.
The site will be auto-generated in the
docs/
folder by Travis CI.
Option 1: Use Hugo Docker Image:
DOCUMENTATION/content
.DOCUMENTATION/
.docker run --rm -it -v $PWD:/src -p 1313:1313 -u hugo jguyomard/hugo-builder hugo server -w --bind=0.0.0.0
Option 2: Install Hugo Locally:
DOCUMENTATION/content
./docs
folder from the root.DOCUMENTATION/
.hugo
command to generate the HTML docs inside a new /docs
folder.Fork the repo and clone the code.
Create folder as the software name (example: mysql
- nginx
).
Add your Dockerfile
in the folder "you may add additional files as well".
Add the software to the docker-compose.yml
file.
Make sure you follow the same code/comments style.
Add the environment variables to the env-example
if you have any.
MOST IMPORTANTLY update the Documentation
, add as much information.
Submit a Pull Request, to the master
branch.
Fork the repo and clone the code.
Open the software (container) folder (example: mysql
- nginx
).
Edit the files.
Make sure to update the Documentation
in case you made any changes.
Submit a Pull Request, to the master
branch.
Open any dockerfile, copy the base image name (example: FROM phusion/baseimage:latest
).
Search for the image in the Docker Hub and find the source..
Most of the image in Laradock are official images, these projects live in other repositories and maintainer by other organizations.
Note: Laradock has two base images for (Workspace
and php-fpm
, mainly made to speed up the build time on your machine.
Find the dockerfiles, edit them and submit a Pull Request.
When updating a Laradock base image (Workspace
or php-fpm
), ask a project maintainer "Admin" to build a new image after your PR is merged.
Note: after the base image is updated, every dockerfile that uses that image, needs to update his base image tag to get the updated code.
Always Test everything and make sure its working:
Consider the following guidelines:
Search GitHub for an open or closed Pull Request that relates to your submission. You don't want to duplicate efforts.
Make your changes in a new git branch:
git checkout -b my-fix-branch master
Commit your changes using a descriptive commit message.
Push your branch to GitHub:
git push origin my-fix-branch
In GitHub, send a pull request to laradock:master
.
If we suggest changes then:
my-fix-branch
).If the PR gets too outdated we may ask you to rebase and force push to update the PR:
git rebase master -i
git push origin my-fix-branch -f
WARNING. Squashing or reverting commits and forced push thereafter may remove GitHub comments on code that were previously made by you and others in your commits.
After your pull request is merged, you can safely delete your branch and pull the changes from the main (upstream) repository:
Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows:
git push origin --delete my-fix-branch
Check out the master branch:
git checkout master -f
Delete the local branch:
git branch -D my-fix-branch
Update your master with the latest upstream version:
git pull --ff upstream master