User Tools

Site Tools


php:docker-php-dev

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
php:docker-php-dev [2025/04/13 10:19] – created Wulf Rajekphp:docker-php-dev [2025/05/04 01:31] (current) Wulf Rajek
Line 4: Line 4:
  
  
 +PHP,nginx,mariadb combo docker compose file with default innodb (155mb base conf dir size):
 +<code - docker-compose.yml>
 +services:
 +  php-dev:
 +    image: trafex/php-nginx
 +    container_name: php-dev
 +    restart: unless-stopped
 +    environment:
 +      - PUID=1016
 +      - PGID=1016
 +      - TZ=Europe/London
 +    ports:
 +      - 7082:8080
 +    volumes:
 +      - /opt/php-dev/html:/var/www/html
 +      #- /opt/php-dev/php-conf/php.ini:/etc/php84/conf.d/settings.ini
 +      #- /opt/php-dev/php-conf/php-fpm.conf:/etc/php84/php-fpm.d/server.conf
 +    depends_on:
 +      - php-dev-mysql
 +    # docker exec php-dev bash
 +    stdin_open: true  # docker run -i
 +    tty: true         # docker run -t
 +    networks:
 +      - php-dev-network
 +  php-dev-mysql:
 +    image: yobasystems/alpine-mariadb
 +    container_name: php-dev-mysql
 +    environment:
 +      MYSQL_ROOT_PASSWORD: devroot
 +      MYSQL_DATABASE: dev
 +      MYSQL_USER: dev_user
 +      MYSQL_PASSWORD: dev_pass
 +      MYSQL_CHARSET: utf8
 +      MYSQL_COLLATION: utf8_general_ci
 +    expose:
 +      - "3306"
 +    ports:
 +      - 23306:3306/tcp
 +    volumes:
 +      - /opt/php-dev/mysql-data:/var/lib/mysql
 +      # - /opt/php-dev/mysql-logs:/var/lib/mysql/mysql-bin
 +      # - /opt/php-dev/mysql-conf/my.cnf:/etc/my.cnf
 +      # - /opt/php-dev/mysql-conf/mariadb-server.cnf:/etc/my.cnf.d/mariadb-server.cnf
 +      # - /opt/php-dev/mysql-conf/00_aria.cnf:/etc/my.cnf.d/00_aria.cnf
 +    restart: unless-stopped
 +    networks:
 +      - php-dev-network
 +    # docker exec php-dev-mysql mysql -uroot -pdevroot dev
 +    stdin_open: true
 +    tty: true
 +
 +networks:
 +  php-dev-network:
 +</code>
 +
 +To use aria (myisam based) by default, enable 00_aria.cnf volume and create this file:
 +<code - /opt/php-dev/mysql-conf/00_aria.cnf>
 +[mysqld]
 +skip-innodb
 +default-storage-engine=Aria
 +default-tmp-storage-engine=Aria
 +innodb=OFF
 +symbolic-links=0
 +log-output=file
 +skip-host-cache
 +skip-name-resolve
 +</code>
 +
 +====== self-build for other php exts ======
 +
 +Adjustments/self build of the php container to add or remove php extensions when necessary:
 <code>git clone https://github.com/TrafeX/docker-php-nginx</code> <code>git clone https://github.com/TrafeX/docker-php-nginx</code>
  
php/docker-php-dev.1744535978.txt.gz · Last modified: by Wulf Rajek