https://github.com/danielmahon/docker-railo
https://github.com/danielmahon/docker-railo
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/danielmahon/docker-railo
- Owner: danielmahon
- License: apache-2.0
- Created: 2014-07-10T15:52:19.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2014-07-10T20:25:49.000Z (almost 12 years ago)
- Last Synced: 2025-04-10T05:50:59.892Z (about 1 year ago)
- Language: Shell
- Size: 133 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
tutum-docker-lamp
=================
Out-of-the-box LAMP image (PHP+MySQL)
Usage
-----
To create the image `tutum/lamp`, execute the following command on the tutum-docker-lamp folder:
docker build -t tutum/lamp .
You can now push your new image to the registry:
docker push tutum/lamp
Running your LAMP docker image
------------------------------
Start your image binding the external ports 80 and 3306 in all interfaces to your container:
docker run -d -p 80:80 -p 3306:3306 tutum/lamp
Test your deployment:
curl http://localhost/
Hello world!
Loading your custom PHP application
-----------------------------------
In order to replace the "Hello World" application that comes bundled with this docker image,
create a new `Dockerfile` in an empty folder with the following contents:
FROM tutum/lamp:latest
RUN rm -fr /app && git clone https://github.com/username/customapp.git /app
EXPOSE 80 3306
CMD ["/run.sh"]
replacing `https://github.com/username/customapp.git` with your application's GIT repository.
After that, build the new `Dockerfile`:
docker build -t username/my-lamp-app .
And test it:
docker run -d -p 80:80 -p 3306:3306 username/my-lamp-app
Test your deployment:
curl http://localhost/
That's it!
Connecting to the bundled MySQL server from within the container
----------------------------------------------------------------
The bundled MySQL server has a `root` user with no password for local connections.
Simply connect from your PHP code with this user:
host_info;
?>
Connecting to the bundled MySQL server from outside the container
-----------------------------------------------------------------
The first time that you run your container, a new user `admin` with all privileges
will be created in MySQL with a random password. To get the password, check the logs
of the container by running:
docker logs $CONTAINER_ID
You will see an output like the following:
========================================================================
You can now connect to this MySQL Server using:
mysql -uadmin -p47nnf4FweaKu -h -P
Please remember to change the above password as soon as possible!
MySQL user 'root' has no password but only allows local connections
========================================================================
In this case, `47nnf4FweaKu` is the password allocated to the `admin` user.
You can then connect to MySQL:
mysql -uadmin -p47nnf4FweaKu
Remember that the `root` user does not allow connections from outside the container -
you should use this `admin` user instead!
Setting a specific password for the MySQL server admin account
--------------------------------------------------------------
If you want to use a preset password instead of a random generated one, you can
set the environment variable `MYSQL_PASS` to your specific password when running the container:
docker run -d -p 80:80 -p 3306:3306 -e MYSQL_PASS="mypass" tutum/lamp
You can now test your new admin password:
mysql -uadmin -p"mypass"
Disabling .htaccess
--------------------
`.htacess` is enabled by default. To disable `.htacess`, you can remove the following contents from `Dockerfile`
# config to enable .htaccess
ADD apache_default /etc/apache2/sites-available/000-default.conf
RUN a2enmod rewrite
**by http://www.tutum.co**