php ch5-7
CakePHP環境つくるやつ
つくるだけなので要所のみ
Dockerfile
- sedのデリミタは
/
以外も使えるんですね - composer早くするやつも入れた
FROM php:7.2-apache ENV APACHE_DOCUMENT_ROOT /var/www/html/app/webroot RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf \ && sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf \ && a2enmod rewrite RUN apt-get update && apt-get install -y \ libicu-dev \ zip \ unzip \ && docker-php-ext-install -j$(nproc) intl \ && docker-php-ext-install -j$(nproc) pdo_mysql RUN ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime COPY . /var/www/html ENV COMPOSER_ALLOW_SUPERUSER 1 COPY --from=composer:1.7 --chown=www-data:www-data /usr/bin/composer /usr/bin/composer RUN composer config -g repos.packagist composer https://packagist.jp RUN composer global require hirak/prestissimo
docker-compose exec web composer create-project --prefer-dist --no-interaction cakephp/app:3.6.* ./app
CREATE DATABASE qa_app; use qa_app; CREATE TABLE `answers` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `question_id` int(10) unsigned NOT NULL, `user_id` int(10) unsigned NOT NULL, `body` varchar(255) NOT NULL, `created` datetime NOT NULL, `modified` datetime NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE `questions` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `user_id` int(10) unsigned NOT NULL, `body` varchar(255) NOT NULL, `created` datetime NOT NULL, `modified` datetime NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE `users` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `username` varchar(16) NOT NULL, `password` varchar(255) NOT NULL, `nickname` varchar(32) NOT NULL, `created` datetime NOT NULL, `modified` datetime NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `username` (`username`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;