8000 feat: adiciona suporte ao php8 · zino-coder/docker-php8@cffdb27 · GitHub
[go: up one dir, main page]

Skip to content

Commit cffdb27

Browse files
feat: adiciona suporte ao php8
1 parent d105e31 commit cffdb27

File tree

9 files changed

+87
-41
lines changed

9 files changed

+87
-41
lines changed

.docker/Dockerfile

100644100755
+12-12
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM php:7.4-apache
1+
FROM php:8-apache
22

33
# Timezone
44
ENV TZ=America/Sao_Paulo
@@ -45,8 +45,7 @@ RUN docker-php-ext-configure gd --with-freetype --with-jpeg
4545

4646
# Instala dependencias do php
4747
RUN docker-php-ext-install \
48-
-j$(nproc) gd \
49-
json \
48+
gd \
5049
iconv \
5150
bcmath \
5251
xml \
@@ -61,19 +60,19 @@ RUN docker-php-ext-install \
6160
opcache \
6261
intl \
6362
xsl \
64-
exif \
65-
soap
63+
exif
6664

6765
# Instala composer
6866
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
6967

7068
# Install xdebug
71-
RUN pecl install xdebug
72-
RUN docker-php-ext-enable xdebug
73-
RUN echo "xdebug.remote_enable=1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini &&\
74-
echo "xdebug.remote_connect_back=1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini &&\
75-
echo "xdebug.idekey=\"PHPSTORM\"" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini &&\
76-
echo "xdebug.remote_port=9001" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
69+
RUN pecl install xdebug \
70+
&& docker-php-ext-enable xdebug \
71+
&& echo 'xdebug.start_with_request=yes' >> /usr/local/etc/php/conf.d/xdebug.ini \
72+
&& echo 'xdebug.mode=debug' >> /usr/local/etc/php/conf.d/xdebug.ini \
73+
&& echo 'xdebug.client_host=host.docker.internal' >> /usr/local/etc/php/conf.d/xdebug.ini \
74+
&& echo 'xdebug.client_port=9000' >> /usr/local/etc/php/conf.d/xdebug.ini \
75+
&& echo 'xdebug.remote_cookie_expire_time=36000' >> /usr/local/etc/php/conf.d/xdebug.ini
7776

7877
# Install redis
7978
RUN pecl install redis
@@ -89,10 +88,11 @@ RUN openssl req -new -x509 -days 365 -nodes \
8988
-keyout /etc/ssl/private/ssl-cert-snakeoil.key \
9089
-subj "/CN=*.localhost"
9190

92-
# Habilita modulos e site
91+
# Apache config
9392
RUN a2enmod rewrite
9493
RUN a2enmod ssl
9594
RUN a2ensite default-ssl
95+
RUN echo "ServerName docker" >> /etc/apache2/apache2.conf
9696

9797
# Permissão de usuários
9898
RUN usermod -u 1000 www-data

.docker/mysql/config/my.cnf

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
[mysqld]
2+
bind-address = 0.0.0.0
3+
4+
innodb_buffer_pool_size = 1024M
5+
6+
default_authentication_plugin=mysql_native_password
7+
8+
# Unicode
9+
character-set-server = utf8mb4
10+
collation-server = utf8mb4_unicode_ci
11+
12+
[client]
13+
ssl-mode = DISABLED
14+
default-character-set = utf8mb4
15+
16+
[mysql]
17+
default-character-set = utf8mb4

.docker/mysql/settings/my.cnf

-2
This file was deleted.

.docker/php/php.ini

+6
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,9 @@ upload_max_filesize = 250M
1515
post_max_size = 500M
1616
max_file_uploads = 50
1717
date.timezone = America/Sao_Paulo
18+
19+
; Enable JIT
20+
;zend_extension=opcache.so
21+
;opcache.enable_cli = 1
22+
;opcache.jit = 1235
23+
;opcache.jit_buffer_size = 500M

.docker/postgres/.gitkeep

100644100755
File mode changed.

.docker/redis/.gitkeep

Whitespace-only changes.

.gitignore

+6-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
/**/.idea/
2+
/**/.DS_Store
23
/**/.docker/apache/logs/*
34
!/**/.docker/apache/logs/.gitkeep
4-
/**/.docker/mysql/data/
5-
/**/.docker/postgres/data/*
6-
!/**/.docker/postgres/data/.gitkeep
5+
/**/.docker/mysql/*
6+
!/**/.docker/mysql/config
7+
!/**/.docker/mysql/database/.gitkeep
8+
/**/.docker/postgres/*
9+
!/**/.docker/postgres/.gitkeep

docker-compose.yml

+43-22
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,21 @@
11
version: '3.7'
22

3+
networks:
4+
php8-network:
5+
driver: bridge
6+
37
services:
48
web:
59
build: ./.docker
610
working_dir: /var/www
11+
restart: always
12+
container_name: php8-web
713
networks:
8-
- mysql
9-
- pgsql
14+
- php8-network
1015
depends_on:
1116
- mysql
12-
- pgsql
17+
# - postgres
18+
# - redis
1319
ports:
1420
- '80:80'
1521
- '443:443'
@@ -25,22 +31,25 @@ services:
2531

2632 10000
mysql:
2733
image: mysql:5.7
34+
restart: always
35+
container_name: php8-mysql
2836
networks:
29-
- mysql
37+
- php8-network
3038
ports:
3139
- '3306:3306'
3240
volumes:
33-
- './.docker/mysql/data:/var/lib/mysql'
34-
- './.docker/mysql/settings:/etc/mysql/conf.d'
41+
- './.docker/mysql/config:/etc/mysql/conf.d'
42+
- './.docker/mysql/database:/var/lib/mysql'
3543
environment:
3644
- MYSQL_PASSWORD=root
3745
- MYSQL_ROOT_PASSWORD=root
3846
- MYSQL_DATABASE=development
3947

4048
# phpmyadmin:
4149
# image: phpmyadmin/phpmyadmin
50+
# container_name: php8-phpmyadmin
4251
# networks:
43-
# - mysql
52+
# - php8-network
4453
# depends_on:
4554
# - mysql
4655
# environment:
@@ -49,19 +58,31 @@ services:
4958
# ports:
5059
# - '8080:80'
5160

52-
pgsql:
53-
image: postgres:alpine
54-
networks:
55-
- pgsql
56-
ports:
57-
- '5432:5432'
58-
volumes:
59-
- './.docker/postgres:/var/lib/postgresql/data'
60-
environment:
61-
- POSTGRES_USER=root
62-
- POSTGRES_PASSWORD=root
63-
- POSTGRES_DB=development
61+
# postgres:
62+
# image: postgres:alpine
63+
# container_name: php8-postgres
64+
# restart: always
65+
# networks:
66+
# - php8-network
67+
# ports:
68+
# - '5432:5432'
69+
# volumes:
70+
# - './.docker/postgres:/var/lib/postgresql/data'
71+
# environment:
72+
# - POSTGRES_USER=root
73+
# - POSTGRES_PASSWORD=root
74+
# - POSTGRES_DB=development
6475

65-
networks:
66-
mysql:
67-
pgsql:
76+
# redis:
77+
# image: bitnami/redis:latest
78+
# restart: always
79+
# container_name: php8-redis
80+
# volumes:
81+
# - ./.docker/redis:/bitnami/redis/data
82+
# networks:
83+
# - php8-network
84+
# environment:
85+
# - ALLOW_EMPTY_PASSWORD=no
86+
# - REDIS_PASSWORD=root
87+
# ports:
88+
# - '6379:6379'

readme.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Docker PHP 7.4 + Apache2 + Mysql + PostgreSQL
1+
# Docker PHP 8 + Apache2 + Mysql + PostgreSQL
22

33
Caso não tenha é preciso instalar o docker e docker-compose.
44

@@ -72,6 +72,7 @@ docker-compose up -d
7272
- Zend OPcache
7373

7474
- [MySQL](https://www.mysql.com/) v5.7.26
75-
- [PostgreSQL](https://www.postgresql.org/) \*
75+
- [PostgreSQL](https://www.postgresql.org/) *
76+
- [Redis](https://redis.io/) *
7677

7778
Aproveite!

0 commit comments

Comments
 (0)
0