-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add Docker configuration and the base application that uses Guzzle
- Loading branch information
Showing
16 changed files
with
628 additions
and
156 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
FROM php:5.6-apache | ||
|
||
# PHP extension | ||
RUN requirements="zlib1g-dev libicu-dev git wget" \ | ||
&& apt-get update && apt-get install -y $requirements && rm -rf /var/lib/apt/lists/* \ | ||
&& docker-php-ext-install pdo_mysql \ | ||
&& docker-php-ext-install mbstring \ | ||
&& docker-php-ext-install intl \ | ||
&& docker-php-ext-install zip \ | ||
&& docker-php-ext-install opcache \ | ||
&& docker-php-ext-install bcmath \ | ||
&& pecl install apcu-4.0.8 && echo extension=apcu.so > /usr/local/etc/php/conf.d/apcu.ini \ | ||
&& apt-get purge --auto-remove -y | ||
|
||
# Apache & PHP configuration | ||
RUN a2enmod rewrite | ||
ADD docker/apache/vhost.conf /etc/apache2/sites-enabled/default.conf | ||
ADD docker/php/php.ini /usr/local/etc/php/php.ini | ||
|
||
# Install composer | ||
RUN curl -sS https://getcomposer.org/installer | php \ | ||
&& mv composer.phar /usr/bin/composer | ||
|
||
# Add the application | ||
COPY . /app | ||
WORKDIR /app | ||
|
||
# Fixes permissions | ||
RUN rm -rf var/cache/* && rm -rf var/logs/* | ||
|
||
# Run dependencies | ||
RUN composer install | ||
|
||
# Fixes permissions | ||
RUN rm -rf var/cache/* && rm -rf var/logs/* \ | ||
&& chown www-data . var/cache var/logs | ||
|
||
CMD ["/app/docker/apache/run.sh"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,68 +1,14 @@ | ||
Symfony Standard Edition | ||
======================== | ||
# Tolerance Example Symfony Service | ||
|
||
Welcome to the Symfony Standard Edition - a fully-functional Symfony | ||
application that you can use as the skeleton for your new applications. | ||
This is an example application that is used for demos of real-life usage of [Tolerance](http://tolerance.io) features. | ||
|
||
For details on how to download and get started with Symfony, see the | ||
[Installation][1] chapter of the Symfony Documentation. | ||
## Getting started with Docker | ||
|
||
What's inside? | ||
-------------- | ||
You can simply use the Docker image: | ||
``` | ||
docker run -d sroze/tolerance-example-symfony-service | ||
``` | ||
|
||
The Symfony Standard Edition is configured with the following defaults: | ||
## Manually | ||
|
||
* An AppBundle you can use to start coding; | ||
|
||
* Twig as the only configured template engine; | ||
|
||
* Doctrine ORM/DBAL; | ||
|
||
* Swiftmailer; | ||
|
||
* Annotations enabled for everything. | ||
|
||
It comes pre-configured with the following bundles: | ||
|
||
* **FrameworkBundle** - The core Symfony framework bundle | ||
|
||
* [**SensioFrameworkExtraBundle**][6] - Adds several enhancements, including | ||
template and routing annotation capability | ||
|
||
* [**DoctrineBundle**][7] - Adds support for the Doctrine ORM | ||
|
||
* [**TwigBundle**][8] - Adds support for the Twig templating engine | ||
|
||
* [**SecurityBundle**][9] - Adds security by integrating Symfony's security | ||
component | ||
|
||
* [**SwiftmailerBundle**][10] - Adds support for Swiftmailer, a library for | ||
sending emails | ||
|
||
* [**MonologBundle**][11] - Adds support for Monolog, a logging library | ||
|
||
* **WebProfilerBundle** (in dev/test env) - Adds profiling functionality and | ||
the web debug toolbar | ||
|
||
* **SensioDistributionBundle** (in dev/test env) - Adds functionality for | ||
configuring and working with Symfony distributions | ||
|
||
* [**SensioGeneratorBundle**][13] (in dev/test env) - Adds code generation | ||
capabilities | ||
|
||
* **DebugBundle** (in dev/test env) - Adds Debug and VarDumper component | ||
integration | ||
|
||
All libraries and bundles included in the Symfony Standard Edition are | ||
released under the MIT or BSD license. | ||
|
||
Enjoy! | ||
|
||
[1]: https://symfony.com/doc/3.0/book/installation.html | ||
[6]: https://symfony.com/doc/current/bundles/SensioFrameworkExtraBundle/index.html | ||
[7]: https://symfony.com/doc/3.0/book/doctrine.html | ||
[8]: https://symfony.com/doc/3.0/book/templating.html | ||
[9]: https://symfony.com/doc/3.0/book/security.html | ||
[10]: https://symfony.com/doc/3.0/cookbook/email.html | ||
[11]: https://symfony.com/doc/3.0/cookbook/logging/monolog.html | ||
[13]: https://symfony.com/doc/3.0/bundles/SensioGeneratorBundle/index.html | ||
Well, that's a classic [Symfony application](http://symfony.com/doc/current/quick_tour/the_big_picture.html) :) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,76 +1,23 @@ | ||
{% extends 'base.html.twig' %} | ||
|
||
{% block body %} | ||
<div id="wrapper"> | ||
<div id="container"> | ||
<div id="welcome"> | ||
<h1><span>Welcome to</span> Symfony {{ constant('Symfony\\Component\\HttpKernel\\Kernel::VERSION') }}</h1> | ||
</div> | ||
|
||
<div id="status"> | ||
<p> | ||
<svg id="icon-status" width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z" fill="#759E1A"/></svg> | ||
|
||
Your application is ready to start working on it at: | ||
<code>{{ base_dir }}/</code> | ||
</p> | ||
</div> | ||
|
||
<div id="next"> | ||
<h2>What's next?</h2> | ||
<p> | ||
<svg id="icon-book" version="1.1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="-12.5 9 64 64" enable-background="new -12.5 9 64 64" xml:space="preserve"> | ||
<path fill="#AAA" d="M6.8,40.8c2.4,0.8,4.5-0.7,4.9-2.5c0.2-1.2-0.3-2.1-1.3-3.2l-0.8-0.8c-0.4-0.5-0.6-1.3-0.2-1.9 | ||
c0.4-0.5,0.9-0.8,1.8-0.5c1.3,0.4,1.9,1.3,2.9,2.2c-0.4,1.4-0.7,2.9-0.9,4.2l-0.2,1c-0.7,4-1.3,6.2-2.7,7.5 | ||
c-0.3,0.3-0.7,0.5-1.3,0.6c-0.3,0-0.4-0.3-0.4-0.3c0-0.3,0.2-0.3,0.3-0.4c0.2-0.1,0.5-0.3,0.4-0.8c0-0.7-0.6-1.3-1.3-1.3 | ||
c-0.6,0-1.4,0.6-1.4,1.7s1,1.9,2.4,1.8c0.8,0,2.5-0.3,4.2-2.5c2-2.5,2.5-5.4,2.9-7.4l0.5-2.8c0.3,0,0.5,0.1,0.8,0.1 | ||
c2.4,0.1,3.7-1.3,3.7-2.3c0-0.6-0.3-1.2-0.9-1.2c-0.4,0-0.8,0.3-1,0.8c-0.1,0.6,0.8,1.1,0.1,1.5c-0.5,0.3-1.4,0.6-2.7,0.4l0.3-1.3 | ||
c0.5-2.6,1-5.7,3.2-5.8c0.2,0,0.8,0,0.8,0.4c0,0.2,0,0.2-0.2,0.5c-0.2,0.3-0.3,0.4-0.2,0.7c0,0.7,0.5,1.1,1.2,1.1 | ||
c0.9,0,1.2-1,1.2-1.4c0-1.2-1.2-1.8-2.6-1.8c-1.5,0.1-2.8,0.9-3.7,2.1c-1.1,1.3-1.8,2.9-2.3,4.5c-0.9-0.8-1.6-1.8-3.1-2.3 | ||
c-1.1-0.7-2.3-0.5-3.4,0.3c-0.5,0.4-0.8,1-1,1.6c-0.4,1.5,0.4,2.9,0.8,3.4l0.9,1c0.2,0.2,0.6,0.8,0.4,1.5c-0.3,0.8-1.2,1.3-2.1,1 | ||
c-0.4-0.2-1-0.5-0.9-0.9c0.1-0.2,0.2-0.3,0.3-0.5s0.1-0.3,0.1-0.3c0.2-0.6-0.1-1.4-0.7-1.6c-0.6-0.2-1.2,0-1.3,0.8 | ||
C4.3,38.4,4.7,40,6.8,40.8z M46.1,20.9c0-4.2-3.2-7.5-7.1-7.5h-3.8C34.8,10.8,32.7,9,30.2,9L-2.3,9.1c-2.8,0.1-4.9,2.4-4.9,5.4 | ||
L-7,58.6c0,4.8,8.1,13.9,11.6,14.1l34.7-0.1c3.9,0,7-3.4,7-7.6L46.1,20.9z M-0.3,36.4c0-8.6,6.5-15.6,14.5-15.6 | ||
c8,0,14.5,7,14.5,15.6S22.1,52,14.2,52C6.1,52-0.3,45-0.3,36.4z M42.1,65.1c0,1.8-1.5,3.1-3.1,3.1H4.6c-0.7,0-3-1.8-4.5-4.4h30.4 | ||
c2.8,0,5-2.4,5-5.4V17.9h3.7c1.6,0,2.9,1.4,2.9,3.1V65.1L42.1,65.1z"/> | ||
</svg> | ||
|
||
Read Symfony documentation to learn | ||
<a href="http://symfony.com/doc/{{ constant('Symfony\\Component\\HttpKernel\\Kernel::VERSION')[:3] }}/book/page_creation.html"> | ||
How to create your first page in Symfony | ||
</a> | ||
</p> | ||
</div> | ||
|
||
</div> | ||
</div> | ||
{% endblock %} | ||
|
||
{% block stylesheets %} | ||
<style> | ||
body { background: #F5F5F5; font: 18px/1.5 sans-serif; } | ||
h1, h2 { line-height: 1.2; margin: 0 0 .5em; } | ||
h1 { font-size: 36px; } | ||
h2 { font-size: 21px; margin-bottom: 1em; } | ||
p { margin: 0 0 1em 0; } | ||
a { color: #0000F0; } | ||
a:hover { text-decoration: none; } | ||
code { background: #F5F5F5; max-width: 100px; padding: 2px 6px; word-wrap: break-word; } | ||
#wrapper { background: #FFF; margin: 1em auto; max-width: 800px; width: 95%; } | ||
#container { padding: 2em; } | ||
#welcome, #status { margin-bottom: 2em; } | ||
#welcome h1 span { display: block; font-size: 75%; } | ||
#icon-status, #icon-book { float: left; height: 64px; margin-right: 1em; margin-top: -4px; width: 64px; } | ||
#icon-book { display: none; } | ||
@media (min-width: 768px) { | ||
#wrapper { width: 80%; margin: 2em auto; } | ||
#icon-book { display: inline-block; } | ||
#status a, #next a { display: block; } | ||
@-webkit-keyframes fade-in { 0% { opacity: 0; } 100% { opacity: 1; } } | ||
@keyframes fade-in { 0% { opacity: 0; } 100% { opacity: 1; } } | ||
.sf-toolbar { opacity: 0; -webkit-animation: fade-in 1s .2s forwards; animation: fade-in 1s .2s forwards;} | ||
} | ||
</style> | ||
{% extends 'layout.html.twig' %} | ||
|
||
{% block contents %} | ||
<div id="welcome"> | ||
<h1><span>Welcome to</span> Tolerance's Symfony Service Example</h1> | ||
</div> | ||
|
||
<div id="status"> | ||
<p> | ||
Your application is ready to start working. | ||
</p> | ||
</div> | ||
|
||
<div id="next"> | ||
<h2>What's next?</h2> | ||
<ul> | ||
<li> | ||
<strong>Call an API</strong> | ||
<a href="{{ path('last_release') }}">Get the last Tolerance release</a> | ||
</li> | ||
</ul> | ||
</div> | ||
{% endblock %} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
{% extends 'layout.html.twig' %} | ||
|
||
{% block contents %} | ||
<div id="welcome"> | ||
<h1><span>The last release of</span> Tolerance</h1> | ||
</div> | ||
|
||
<div id="status"> | ||
<p> | ||
Name: <strong>{{ release.name }}</strong> | ||
<br /> | ||
Tag: <code>{{ release.tag_name }}</code> | ||
</p> | ||
<pre>{{ release.body }}</pre> | ||
</div> | ||
|
||
<div id="next"> | ||
<h2>What's next?</h2> | ||
<p> | ||
<a href="{{ path('home') }}">Back to home</a> | ||
</p> | ||
</div> | ||
{% endblock %} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
{% extends 'base.html.twig' %} | ||
|
||
{% block body %} | ||
<div id="wrapper"> | ||
<div id="container"> | ||
{% block contents %}{% endblock %} | ||
</div> | ||
</div> | ||
{% endblock %} | ||
|
||
{% block stylesheets %} | ||
<style> | ||
body { background: #F5F5F5; font: 18px/1.5 sans-serif; } | ||
h1, h2 { line-height: 1.2; margin: 0 0 .5em; } | ||
h1 { font-size: 36px; } | ||
h2 { font-size: 21px; margin-bottom: 1em; } | ||
p { margin: 0 0 1em 0; } | ||
a { color: #0000F0; } | ||
a:hover { text-decoration: none; } | ||
code { background: #F5F5F5; max-width: 100px; padding: 2px 6px; word-wrap: break-word; } | ||
#wrapper { background: #FFF; margin: 1em auto; max-width: 800px; width: 95%; } | ||
#container { padding: 2em; } | ||
#welcome, #status { margin-bottom: 2em; } | ||
#welcome h1 span { display: block; font-size: 75%; } | ||
#icon-status, #icon-book { float: left; height: 64px; margin-right: 1em; margin-top: -4px; width: 64px; } | ||
#icon-book { display: none; } | ||
@media (min-width: 768px) { | ||
#wrapper { width: 80%; margin: 2em auto; } | ||
#icon-book { display: inline-block; } | ||
#status a, #next a { display: block; } | ||
@-webkit-keyframes fade-in { 0% { opacity: 0; } 100% { opacity: 1; } } | ||
@keyframes fade-in { 0% { opacity: 0; } 100% { opacity: 1; } } | ||
.sf-toolbar { opacity: 0; -webkit-animation: fade-in 1s .2s forwards; animation: fade-in 1s .2s forwards;} | ||
} | ||
</style> | ||
{% endblock %} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.