Revize 28926492
Přidáno uživatelem Tomáš Ballák před téměř 5 roky(ů)
.docker-compose-dev.yml | ||
---|---|---|
1 | 1 |
version: "3.2" |
2 | 2 |
services: |
3 |
py-charm: |
|
4 |
build: |
|
5 |
context: ./python-module |
|
6 |
dockerfile: '../build/php-fpm/dev/Dockerfile' |
|
7 |
ports: |
|
8 |
- "9001:9000" |
|
9 |
volumes: |
|
10 |
- ./python-module:/var/python-module |
|
11 |
|
|
12 |
container_name: "heatmap_py_charm" |
|
3 | 13 |
php-fpm: |
4 |
build: './build/php-fpm/dev'
|
|
14 |
build: ./build/php-fpm/dev/
|
|
5 | 15 |
depends_on: |
6 | 16 |
- database |
7 | 17 |
networks: |
8 | 18 |
- backend |
9 | 19 |
ports: |
10 |
- "9001:9000"
|
|
20 |
- "9000:9000"
|
|
11 | 21 |
volumes: |
12 | 22 |
- ./website/:/var/www/symfony |
23 |
- ./python-module:/var/python-module |
|
13 | 24 |
container_name: "heatmap_php_fpm" |
14 |
|
|
15 | 25 |
environment: |
16 | 26 |
XDEBUG_CONFIG: remote_host=172.17.0.1 #your docker network i TODO:NOT WORKING |
17 | 27 |
nginx: |
.gitignore | ||
---|---|---|
5 | 5 |
.phpcs-cache |
6 | 6 |
.php_cs.cache |
7 | 7 |
database/ |
8 |
.idea |
README.md | ||
---|---|---|
6 | 6 |
|
7 | 7 |
## 🔩 Development env |
8 | 8 |
|
9 |
* Install **latest php**, **[🐳 docker](https://www.docker.com/)** and **[📝 vscode](https://code.visualstudio.com/)**
|
|
9 |
* Install **latest php**, **[🐳 docker](https://www.docker.com/)**, **[📝 vscode](https://code.visualstudio.com/)** and **[🐍PyCharm](https://www.jetbrains.com/pycharm/)**
|
|
10 | 10 |
* Then run `./scripts/dev/build.sh` or `scripts/dev/build.bat` in the root of the project |
11 | 11 |
* When you run `docker ps` you should see these containers: **heatmap_nginx**, **heatmap_php-fpm** and **heatmap_mongodb** |
12 | 12 |
* Symfony project should be available on http://localhost:80 |
... | ... | |
18 | 18 |
* require `./scripts/composer.sh require package_name` |
19 | 19 |
### PHP Linter in vscode |
20 | 20 |
* If you want check your code style is in the right format press <kbd>F1</kbd> choose `Tasks: Run Task` and `PHP Linter` |
21 |
* If you want to format the current file just press <kbd>F1</kbd> choose `Tasks: Run Task` and `Format` |
|
21 |
* If you want to format the current file just press <kbd>F1</kbd> choose |
|
22 |
`Tasks: Run Task` and `Format` |
|
23 |
### PyCharm |
|
24 |
* First you need to set python interpeter to the containers by **following these steps** |
|
25 |
<div style="display: flex; flex-direction: row; justify-content: space-around;flex-wrap: wrap"> |
|
26 |
<div style="height: 450px; display: flex; justify-content: space-between;flex-direction: column;"> |
|
27 |
<img src="./guide/1.png" width="500px" style="display: block"/> |
|
28 |
<p style="background: red">A. Enter Settings (File/Preferences/Settings)</p> |
|
29 |
</div> |
|
30 |
<div style="height: 450px; display: flex; justify-content: space-between; flex-direction: column;"> |
|
31 |
<img src="./guide/2.png" width="500px" height="360px" style="display: block"/> |
|
32 |
<p style="background: red">B. In the left panel choose <b>Docker</b> and in <b>Image Name</b> choose <b>heatmap_py-charm</b></p> |
|
33 |
</div> |
|
34 |
<div style="height: 450px; display: flex; justify-content: space-between;flex-direction: column;"> |
|
35 |
<img src="./guide/3.png" width="500px" style="display: block"/> |
|
36 |
<p style="background: red">C. When setup is ok you will see all packages from requirements on this screen</b></p> |
|
37 |
</div> |
|
38 |
</div> |
|
39 |
|
|
40 |
* New dependencies put in **requirements.txt** and then run build `./scripts/dev/build.sh` |
|
41 |
|
|
22 | 42 |
## 🚀 Production env |
23 | 43 |
* To run production env on your local machine execute this `./scripts/build.sh` |
build/php-fpm/dev/Dockerfile | ||
---|---|---|
17 | 17 |
pip3 install --no-cache --upgrade pip setuptools wheel && \ |
18 | 18 |
if [ ! -e /usr/bin/pip ]; then ln -s pip3 /usr/bin/pip ; fi |
19 | 19 |
|
20 |
|
|
21 |
COPY xdebug.ini /etc/php7/conf.d/xdebug.ini |
|
22 |
RUN echo -en "\n" >> /etc/php7/conf.d/xdebug.ini |
|
23 |
RUN apk --update --no-cache add autoconf g++ make && \ |
|
24 |
pecl install -f xdebug-2.9.4 && \ |
|
25 |
docker-php-ext-enable xdebug && \ |
|
26 |
apk del --purge autoconf g++ make |
|
27 |
RUN echo zend_extension="$(find / -name 'xdebug.so')" >> /etc/php7/conf.d/xdebug.ini |
|
28 |
RUN echo "**** install PHP Composer ****\n" && \ |
|
29 |
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer |
|
20 |
COPY requirements.txt /requirements.txt |
|
21 |
RUN pip install -r /requirements.txt |
docker-compose.yml | ||
---|---|---|
10 | 10 |
- "9000:9000" |
11 | 11 |
volumes: |
12 | 12 |
- ./website/:/var/www/symfony |
13 |
- ./python-module:/var/python-module |
|
14 |
|
|
13 | 15 |
container_name: "heatmap_php_fpm" |
14 | 16 |
nginx: |
15 | 17 |
build: './build/nginx' |
python-module/requirements.txt | ||
---|---|---|
1 |
emoji===0.5.4 |
python-module/test.py | ||
---|---|---|
1 |
import emoji |
|
2 |
print(emoji.emojize('Python is :thumbs_up:')) |
scripts/build.sh | ||
---|---|---|
2 | 2 |
#Build development environment |
3 | 3 |
docker-compose down |
4 | 4 |
docker-compose up --build -d |
5 |
docker-compose exec -T php-fpm composer install --no-interaction --working-dir=/var/www/symfony --no-dev |
|
5 |
docker-compose exec -T php-fpm composer install --no-interaction --working-dir=/var/www/symfony --no-dev |
|
6 |
docker-compose exec -T php-fpm pip install -r /var/python-module/requirements.txt |
scripts/composer.sh | ||
---|---|---|
7 | 7 |
\ \_____\ \_____\ \_\ \ \_\ \_\ \ \_____\/\_____\ \_____\ \_\ \_\ |
8 | 8 |
\/_____/\/_____/\/_/ \/_/\/_/ \/_____/\/_____/\/_____/\/_/ /_/ |
9 | 9 |
EOF |
10 |
docker-compose exec php-fpm composer --working-dir=/var/www/symfony $@ |
|
10 |
docker-compose exec -T php-fpm composer --working-dir=/var/www/symfony $@ |
scripts/dev/build.sh | ||
---|---|---|
2 | 2 |
#Build development environment |
3 | 3 |
docker-compose down |
4 | 4 |
docker-compose -f .docker-compose-dev.yml up --build -d |
5 |
|
|
5 | 6 |
cat << "EOF" |
6 | 7 |
______ ______ __ __ ______ ______ ______ ______ ______ __ __ __ ______ ______ ______ __ __ |
7 | 8 |
/\ ___\/\ __ \/\ "-./ \/\ == /\ __ \/\ ___\/\ ___\/\ == \ /\ \/\ "-.\ \/\ ___\/\__ _/\ __ \/\ \ /\ \ |
... | ... | |
9 | 10 |
\ \_____\ \_____\ \_\ \ \_\ \_\ \ \_____\/\_____\ \_____\ \_\ \_\ \ \_\ \_\\"\_\/\_____\ \ \_\\ \_\ \_\ \_____\ \_____\ |
10 | 11 |
\/_____/\/_____/\/_/ \/_/\/_/ \/_____/\/_____/\/_____/\/_/ /_/ \/_/\/_/ \/_/\/_____/ \/_/ \/_/\/_/\/_____/\/_____/ |
11 | 12 |
EOF |
12 |
docker-compose exec php-fpm composer install --no-interaction --working-dir=/var/www/symfony |
|
13 |
docker-compose exec php-fpm composer install --no-interaction --working-dir=/var/www/symfony |
|
14 |
cat << "EOF" |
|
15 |
______ __ ______ __ __ __ ______ ______ ______ __ __ |
|
16 |
/\ == \/\ \ /\ == \ /\ \ /\ "-.\ \ /\ ___\ /\__ _\/\ __ \ /\ \ /\ \ |
|
17 |
\ \ _-/\ \ \\ \ _-/ \ \ \\ \ \-. \\ \___ \\/_/\ \/\ \ __ \\ \ \____\ \ \____ |
|
18 |
\ \_\ \ \_\\ \_\ \ \_\\ \_\\"\_\\/\_____\ \ \_\ \ \_\ \_\\ \_____\\ \_____\ |
|
19 |
\/_/ \/_/ \/_/ \/_/ \/_/ \/_/ \/_____/ \/_/ \/_/\/_/ \/_____/ \/_____/ |
|
20 |
EOF |
|
21 |
docker-compose exec php-fpm pip install -r /var/python-module/requirements.txt |
scripts/dev/composer.bat | ||
---|---|---|
1 |
docker run --rm --interactive --tty --volume %CD%:/app composer %* |
|
1 |
docker-compose exec php-fpm composer install --no-interaction --working-dir=/var/www/symfony |
scripts/dev/pip.bat | ||
---|---|---|
1 |
docker-compose exec -T php-fpm pip install -r /var/python/requirements.txt |
scripts/pip.sh | ||
---|---|---|
1 |
#install requirements pips.sh install -r /var/python/requirements.txt |
|
2 |
docker-compose exec -T php-fpm pip $@ |
Také k dispozici: Unified diff
Re #7900 python3 and pip settings for container