Kévio Castro 11 rokov pred
commit
06187e1ae3

+ 64 - 0
Dockerfile

@@ -0,0 +1,64 @@
+FROM php:5.6-apache
+COPY docker_config/php.ini /usr/local/etc/php/
+COPY . /var/www/html/ 
+
+#RUN apt-get update && apt-get install -y apt-utils pwgen 
+
+# Elgg requirements
+RUN apt-get update && apt-get install -y \
+        libfreetype6-dev \
+        libjpeg62-turbo-dev \
+        libmcrypt-dev \
+        libpng12-dev \
+    	&& docker-php-ext-install gd \
+    	&& docker-php-ext-install pdo \
+    	&& docker-php-ext-install mysql \
+    	&& docker-php-ext-install mbstring
+
+
+# Email server
+# RUN apt-get -y install ssmtp
+
+#Configs apache
+RUN a2enmod rewrite
+
+#Set time zone in server
+ENV TIMEZONE="America/Sao_Paulo"
+RUN cp /usr/share/zoneinfo/${TIMEZONE} /etc/localtime
+
+
+# set defaults or env vars for Elgg and MySQL
+# MySQL
+ENV MYSQL_USER=${MYSQL_USER:-"admin"}
+ENV MYSQL_PASS=${MYSQL_PASS:-"123123"}
+
+# required for installation
+ENV ELGG_DB_HOST=${ELGG_DB_HOST:-"127.0.0.1"}
+ENV ELGG_DB_USER=$MYSQL_USER
+ENV ELGG_DB_PASS=$MYSQL_PASS
+ENV ELGG_DB_NAME=${ELGG_DB_NAME:-"elgg"}
+
+ENV ELGG_SITE_NAME=${ELGG_SITE_NAME:-"Elgg Site"}
+# Elgg requires a FQDN for the email address.
+ENV ELGG_SITE_EMAIL=${ELGG_SITE_EMAIL:-"no-reply@${HOSTNAME}"}
+ENV ELGG_WWW_ROOT=${ELGG_WWW_ROOT:-"http://localhost:${PORT}"}
+ENV ELGG_DATA_ROOT=${ELGG_DATA_ROOT:-"/media/elgg/"}
+
+# admin user setup
+ENV ELGG_DISPLAY_NAME=${ELGG_DISPLAY_NAME:-"admin"}
+ENV ELGG_EMAIL=${ELGG_EMAIL:-"elgg-admin@${HOSTNAME}"}
+ENV ELGG_USERNAME=${ELGG_USERNAME:-"admin"}
+ENV ELGG_PASSWORD=${ELGG_PASSWORD:-"123123"}
+
+# optional for installation
+ENV ELGG_DB_PREFIX=${ELGG_DB_PREFIX:-"elgg_"}
+ENV ELGG_PATH=${ELGG_PATH:-"/var/www/html/"}
+# 2 is ACCESS_PUBLIC
+ENV ELGG_SITE_ACCESS=2
+
+COPY docker-install.php /docker-install.php
+COPY docker-entrypoint.sh /docker-entrypoint.sh
+RUN chmod +x /docker-entrypoint.sh
+RUN /docker-entrypoint.sh
+
+# ENTRYPOINT ['php', 'docker-entrypoint.sh'] 

+ 11 - 0
docker-compose.yml

@@ -0,0 +1,11 @@
+web:
+	build: .
+	port: 
+		- "8000:80"
+	links: 
+		- mysql
+mysql:
+	image: mysql:5.7
+	environment:
+		MYSQL_ROOT_PASSWORD: 123123
+		MYSQL_DATABASE: elgg

+ 1 - 0
docker-entrypoint.sh

@@ -0,0 +1 @@
+php	/docker-install.php

+ 35 - 0
docker-install.php

@@ -0,0 +1,35 @@
+<?php 
+/**
+ * Docker CLI Elgg installer script 
+ */
+$autoload_path = '/var/www/html/vendor/autoload.php';
+$autoload_available = include_once($autoload_path);
+if (!$autoload_available) {
+	die("Couldn't include '$autoload_path'. Did you run `composer install`?");
+}
+
+$installer = new ElggInstaller();
+
+$params = array(
+	// database parameters
+	'dbuser' => getenv('ELGG_DB_USER'),
+	'dbpassword' => getenv('ELGG_DB_PASS'),
+	'dbname' => getenv('ELGG_DB_NAME'),
+	'dbhost' => getenv('ELGG_DB_HOST'),
+	'dbprefix' => getenv('ELGG_DB_PREFIX'),
+	// site settings
+	'sitename' => getenv('ELGG_SITE_NAME'),
+	'siteemail' => getenv('ELGG_SITE_EMAIL'),
+	'wwwroot' => getenv('ELGG_WWW_ROOT'),
+	'dataroot' => getenv('ELGG_DATA_ROOT'),
+	// admin account
+	'displayname' => getenv('ELGG_DISPLAY_NAME'),
+	'email' => getenv('ELGG_EMAIL'),
+	'username' => getenv('ELGG_USERNAME'),
+	'password' => getenv('ELGG_PASSWORD'),
+	'path' => getenv('ELGG_PATH')
+);
+
+$installer->batchInstall($params, true);
+
+exit(0);

+ 1 - 0
docker_config/php.ini

@@ -0,0 +1 @@
+date.timezone = "America/Sao_Paulo"

+ 11 - 0
elgg-docker.sublime-project

@@ -0,0 +1,11 @@
+{
+	"folders":
+	[
+		{
+			"path": "."
+		},
+		{
+			"path": "/home/kevio/www/Elgg"
+		}
+	]
+}

+ 401 - 0
elgg-docker.sublime-workspace

@@ -0,0 +1,401 @@
+{
+	"auto_complete":
+	{
+		"selected_items":
+		[
+			[
+				"var",
+				"var_dump"
+			]
+		]
+	},
+	"buffers":
+	[
+	],
+	"build_system": "",
+	"build_system_choices":
+	[
+	],
+	"build_varint": "",
+	"command_palette":
+	{
+		"height": 117.0,
+		"last_filter": "instal",
+		"selected_items":
+		[
+			[
+				"instal",
+				"Package Control: Install Package"
+			],
+			[
+				"rien",
+				"Indentation: Reindent Lines"
+			],
+			[
+				"rein",
+				"Indentation: Reindent Lines"
+			],
+			[
+				"dock",
+				"Set Syntax: Dockerfile"
+			],
+			[
+				"insta",
+				"Package Control: Install Package"
+			],
+			[
+				"git che",
+				"Git: Checkout Current File"
+			],
+			[
+				"git comi",
+				"Git: Commit"
+			],
+			[
+				"git status",
+				"Git: Status"
+			],
+			[
+				"git add",
+				"Git: Add..."
+			],
+			[
+				"gitsta",
+				"Git: Status"
+			],
+			[
+				"git sta",
+				"Git: Status"
+			],
+			[
+				"mark",
+				"GitHub Flavored Markdown: Preview"
+			],
+			[
+				"mar",
+				"Set Syntax: Markdown"
+			],
+			[
+				"ins",
+				"Package Control: Install Package"
+			]
+		],
+		"width": 449.0
+	},
+	"console":
+	{
+		"height": 139.0,
+		"history":
+		[
+			"import urllib.request,os,hashlib; h = 'eb2297e1a458f27d836c04bb0cbaf282' + 'd0e7a3098092775ccb37ca9d6b2e4b7d'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)"
+		]
+	},
+	"distraction_free":
+	{
+		"menu_visible": true,
+		"show_minimap": false,
+		"show_open_files": false,
+		"show_tabs": false,
+		"side_bar_visible": false,
+		"status_bar_visible": false
+	},
+	"expanded_folders":
+	[
+		"/home/kevio/www/elgg-docker"
+	],
+	"file_history":
+	[
+		"/home/kevio/www/elgg-docker/Dockerfile",
+		"/home/kevio/www/elgg-docker/docker-compose.yml",
+		"/home/kevio/www/sunshine/composer.json",
+		"/home/kevio/www/resap/composer.json",
+		"/home/kevio/www/resap/settings.php",
+		"/home/kevio/www/Elgg/docker/Dockerfile",
+		"/home/kevio/www/resap/vendor/elgg/elgg/engine/classes/ElggInstaller.php",
+		"/home/kevio/www/elgg-docker/install.php",
+		"/home/kevio/www/Elgg/install.php",
+		"/home/kevio/www/resap/vendor/mrclay/minify/min/lib/Minify/CSS/UriRewriter.php",
+		"/home/kevio/www/resap/vendor/elgg/elgg/engine/classes/Elgg/Application.php",
+		"/home/kevio/www/resap/vendor/mrclay/minify/min/builder/rewriteTest.js",
+		"/home/kevio/www/elgg-docker/config/php.ini",
+		"/home/kevio/www/elgg-docker/php.ini",
+		"/home/kevio/www/elgg-docker/index.php",
+		"/home/kevio/www/Elgg-composer/composer.json",
+		"/home/kevio/www/docker-elgg/install.php",
+		"/home/kevio/www/docker-elgg/run.sh",
+		"/home/kevio/www/docker-elgg/Dockerfile",
+		"/home/kevio/www/resap/Dockerfile",
+		"/home/kevio/www/resap/docker_install.php",
+		"/home/kevio/www/resap/vendor/elgg/elgg/engine/classes/Elgg/Composer/PostUpdate.php",
+		"/home/kevio/www/resap/.gitignore",
+		"/home/kevio/www/mydockerbuild/Dockerfile",
+		"/home/kevio/www/resap/vendor/elgg/elgg/install/cli/travis_installer.php",
+		"/home/kevio/www/resap/vendor/elgg/elgg/.scripts/check_global_requirements.php",
+		"/home/kevio/www/resap/vendor/elgg/elgg/install.php",
+		"/home/kevio/www/resap/vendor/elgg/elgg/engine/lib/elgglib.php",
+		"/home/kevio/www/resap/vendor/elgg/elgg/views/default/input/access.php",
+		"/home/kevio/www/resap/mod/pages/views/default/forms/pages/edit.php",
+		"/home/kevio/www/resap/mod/pages/start.php",
+		"/home/kevio/www/resap/vendor/elgg/elgg/engine/lib/access.php",
+		"/home/kevio/www/resap/vendor/elgg/elgg/engine/classes/Elgg/Database/AccessCollections.php",
+		"/home/kevio/www/resap/mod/pages/actions/pages/edit.php",
+		"/etc/apt/sources.list",
+		"/home/kevio/www/resap/mod/elgg_material_design_theme/start.php",
+		"/home/kevio/www/resap/vendor/elgg/elgg/engine/settings.php",
+		"/home/kevio/www/resap/mod/elgg_material_design_theme/manifest.xml",
+		"/home/kevio/Área de Trabalho/telefone.txt",
+		"/home/kevio/www/resap/.htaccess",
+		"/home/kevio/www/elgg/composer.json",
+		"/home/kevio/www/elgg-puphpet/Vagrantfile",
+		"/home/kevio/www/resap/mod/diario_classe/views/default/pages/grade_semanal.php",
+		"/home/kevio/www/resap/mod/diario_classe/classes/GradeSemanal.php",
+		"/home/kevio/www/resap/cookbooks/main/metadata.rb",
+		"/home/kevio/www/resap/Vagrantfile",
+		"/home/kevio/www/resap/.gitmodules",
+		"/etc/hostname",
+		"/home/kevio/www/resap/cookbooks/main/recipes/default.rb",
+		"/home/kevio/www/learn-polymer/server.js",
+		"/home/kevio/www/learn-polymer/public/app.html",
+		"/home/kevio/www/learn-polymer/public/elements/post-list.html",
+		"/home/kevio/www/learn-polymer/bower.json",
+		"/usr/share/applications/genymotion.desktop",
+		"/usr/share/applications/firefox.desktop",
+		"/etc/environment",
+		"/etc/bash.bashrc",
+		"/home/kevio/.profile",
+		"/etc/profile",
+		"/home/kevio/android-studio/build.txt"
+	],
+	"find":
+	{
+		"height": 35.0
+	},
+	"find_in_files":
+	{
+		"height": 93.0,
+		"where_history":
+		[
+			"/home/kevio/www/resap/vendor/elgg",
+			"/home/kevio/www/resap/vendor",
+			"/home/kevio/www/resap/vendor/elgg",
+			"/home/kevio/www/learn-polymer/public"
+		]
+	},
+	"find_state":
+	{
+		"case_sensitive": false,
+		"find_history":
+		[
+			"-S",
+			"export",
+			"gd",
+			"requirements",
+			"gd",
+			"time",
+			"PATH",
+			"run",
+			"/\n",
+			"install",
+			"ADD",
+			"prefix",
+			"var_",
+			"get_",
+			"get",
+			"button",
+			"access:collections:read",
+			"echo",
+			"public",
+			"access",
+			"language",
+			"languag",
+			"language",
+			"languages",
+			"ACCESS_PUBLIC",
+			"languages",
+			"language.php",
+			"ACCESS_PUBLIC",
+			"<i>(avatar)</i>",
+			"<i>avatar</i>",
+			"ACCESS_PUBLIC",
+			"transla",
+			"localhost",
+			"GradeSemanal",
+			"sed -i",
+			"type",
+			"tty",
+			"fab",
+			"core-icons.html",
+			"TOOLS"
+		],
+		"highlight": true,
+		"in_selection": false,
+		"preserve_case": false,
+		"regex": false,
+		"replace_history":
+		[
+		],
+		"reverse": false,
+		"show_context": true,
+		"use_buffer2": true,
+		"whole_word": false,
+		"wrap": true
+	},
+	"groups":
+	[
+		{
+			"sheets":
+			[
+			]
+		}
+	],
+	"incremental_find":
+	{
+		"height": 25.0
+	},
+	"input":
+	{
+		"height": 33.0
+	},
+	"layout":
+	{
+		"cells":
+		[
+			[
+				0,
+				0,
+				1,
+				1
+			]
+		],
+		"cols":
+		[
+			0.0,
+			1.0
+		],
+		"rows":
+		[
+			0.0,
+			1.0
+		]
+	},
+	"menu_visible": true,
+	"output.find_results":
+	{
+		"height": 112.0
+	},
+	"output.git":
+	{
+		"height": 112.0
+	},
+	"pinned_build_system": "",
+	"project": "elgg-docker.sublime-project",
+	"replace":
+	{
+		"height": 46.0
+	},
+	"save_all_on_build": true,
+	"select_file":
+	{
+		"height": 0.0,
+		"last_filter": "",
+		"selected_items":
+		[
+			[
+				"rewrite.php",
+				"vendor/mrclay/minify/min/lib/Minify/CSS/UriRewriter.php"
+			],
+			[
+				"rew",
+				"vendor/mrclay/minify/min/builder/rewriteTest.js"
+			],
+			[
+				"postupdate",
+				"vendor/elgg/elgg/engine/classes/Elgg/Composer/PostUpdate.php"
+			],
+			[
+				"install/cli/travis_installer.php",
+				"vendor/elgg/elgg/install/cli/travis_installer.php"
+			],
+			[
+				"scripts/check_global_requirements.php",
+				"vendor/elgg/elgg/.scripts/check_global_requirements.php"
+			],
+			[
+				"classes/elgg/database/accesscollections.php",
+				"vendor/elgg/elgg/engine/classes/Elgg/Database/AccessCollections.php"
+			],
+			[
+				"input/access",
+				"vendor/elgg/elgg/views/default/input/access.php"
+			],
+			[
+				"pages/edit",
+				"mod/pages/views/default/forms/pages/edit.php"
+			],
+			[
+				"pagestart",
+				"mod/pages/start.php"
+			],
+			[
+				"elgg/elgg/access",
+				"vendor/elgg/elgg/engine/lib/access.php"
+			],
+			[
+				"asse/views/default/pages/grade_semanal.php",
+				"mod/diario_classe/views/default/pages/grade_semanal.php"
+			],
+			[
+				"grade_semanal.php",
+				"mod/diario_classe/views/default/pages/grade_semanal.php"
+			],
+			[
+				"vagrant",
+				"Vagrantfile"
+			]
+		],
+		"width": 0.0
+	},
+	"select_project":
+	{
+		"height": 500.0,
+		"last_filter": "",
+		"selected_items":
+		[
+			[
+				"elg",
+				"~/www/Elgg/Elgg.sublime-workspace"
+			],
+			[
+				"res",
+				"~/resap.sublime-project"
+			],
+			[
+				"",
+				"~/elgg_material_design.sublime-project"
+			]
+		],
+		"width": 380.0
+	},
+	"select_symbol":
+	{
+		"height": 33.0,
+		"last_filter": "",
+		"selected_items":
+		[
+		],
+		"width": 1277.0
+	},
+	"selected_group": 0,
+	"settings":
+	{
+	},
+	"show_minimap": true,
+	"show_open_files": false,
+	"show_tabs": true,
+	"side_bar_visible": true,
+	"side_bar_width": 271.0,
+	"status_bar_visible": true,
+	"template_settings":
+	{
+	}
+}