Elgg is an award-winning social networking engine, delivering the building blocks that enable businesses, schools, universities and associations to create their own fully-featured social networks and applications.
For more information and related for Elgg, please visit www.elgg.org.
Before you start you need to have installed:
- composer: https://getcomposer.org/download/
- docker: http://docs.docker.com/linux/step_one/ or https://docs.docker.com/installation/ubuntulinux/
- docker-compose: https://docs.docker.com/compose/install/
1.. Get the Elgg:
$
& mkdir elgg && cd elgg
$ composer.phar global require "fxp/composer-asset-plugin:~1.1.1"
$ composer create-project elgg/starter-project:dev-master .
$ composer.phar install
See http://learn.elgg.org/en/stable/intro/install.html#upload-elgg
2.. Create file docker-compose.yml at your project directory, for running multi-container applications with docker-compose:
web:
image: keviocastro/elgg-docker:2.0
ports:
- "8000:80" #If you change the port, you must also change the environment variable ELGG_WWW_ROOT
links:
- mysql
volumes:
- .:/var/www/html/
environment:
MYSQL_USER: root
MYSQL_PASS: root-pass
ELGG_USERNAME: admin
ELGG_PASSWORD: admin-pass
ELGG_WWW_ROOT: http://localhost:8000
mysql:
image: mysql:5.6
environment:
MYSQL_DATABASE: elgg
MYSQL_ROOT_PASSWORD: root-pass
$ docker-compose up -d
3.. Install the Elgg:
$ docker exec elgg_web_1 /elgg-docker/elgg-install.sh
Visit your Elgg site: http://localhost:8000/
When you start the elgg-docker image, you can adjust the configuration of the elgg instance by passing one or
more environment variables.
The default values are in Dockerfile file: Dockerfile
You can modify the parameters by passing one or more environment variables in file docker-compose.yml
Example:
web:
image: keviocastro/elgg-docker:2.0
environment:
MYSQL_USER: elgg
MYSQL_PASS: elgg-pass
ELGG_DISPLAY_NAME: my-name
ELGG_DB_PREFIX: my-elgg
TIMEZONE: America/Sao_Paulo
TIMEZONE
The timezone of the server and phpMYSQL_USER
The DB username to createMYSQL_PASS
The DB password to set on the created userELGG_DB_HOST
The DB host Elgg will useELGG_DB_USER
The DB user Elgg will useELGG_DB_PASS
The DB password Elgg will useELGG_DB_PREFIX
Elgg's DB prefixELGG_DB_NAME
The name of the DB Elgg will useELGG_SITE_NAME
Elgg's site nameELGG_SITE_EMAIL
Elgg site email addressELGG_WWW_ROOT
Elgg's www_root (Don't change this unless you modify run.sh and the installation)ELGG_DATA_ROOT
The data_root for Elgg (/media)ELGG_DISPLAY_NAME
The display name for the admin userELGG_EMAIL
The email address for the admin user (must be a well-formed, though not necessarily value, address)ELGG_USERNAME
The username of the admin userELGG_PASSWORD
The password for the admin userELGG_PATH
The location Elgg is installed (Don't change this unless you modify run.sh and the installation)ELGG_SITE_ACCESS
The default site access