Docker image to run PHP (supporting Laravel) and Node projects.
This image it's for development. Optimize to use in production!
In the latest update, I changed the base image to
php:alpine for size optimizing.
Supported Databases (PDO)
Extra supported extensions
docker pull hitalos/laravel
docker run --name <container_name> -d -v $PWD:/var/www -p 80:80 hitalos/laravel
Where $PWD is the laravel installation folder.
docker-compose.yml file in the root folder of project using this as a template:
web: image: hitalos/laravel:latest ports: - 80:80 volumes: - ./:/var/www # If you don't want to use default 'artisan serve' command, edit and uncomment the line below. # command: php -S 0.0.0.0:80 -t public public/index.php
Then run using this command:
If you want to use a database, you can create your
docker-compose.yml with two containers.
web: image: hitalos/laravel:latest ports: - 80:80 volumes: - ./:/var/www links: - db environment: DB_HOST: db DB_DATABASE: dbname DB_USERNAME: username DB_PASSWORD: p455w0rd DB_CONNECTION: [pgsql or mysql] db: image: [postgres or mysql] environment: # with mysql MYSQL_DATABASE: dbname MYSQL_USER: username MYSQL_PASSWORD: p455w0rd # with postgres POSTGRES_DB: dbname POSTGRES_USER: username POSTGRES_PASSWORD: p455w0rd
This works great, but... I did have to add a
MYSQL_ROOT_PASSWORD: field to the
docker-compose.yml file. I also changed
db: -> image: -> mariadb. All other settings can remain the same and still use MariaDB.
Any chance you could add the php curl extension?
not sure why, but when i try to pull your image i get this error after some downloading
unauthorized: authentication required
thx for providing this image. BTW, how do I add a mysql container for it?