Контейнер Docker: Apache + PHP + MYSQL (как сервер для приложений Symfony2)
# docker run -i -t \
--name="centos_6.5_webserv" \
--hostname="webserv" \
--lxc-conf="lxc.network.ipv4 = 192.168.1.21/24" \
centos:centos6 /bin/bash
==============================================================
UPD: Инсталляция на NGINX с PHP версией 6.5
==============================================================
SSH
# passwd
# yum -y install openssh-server openssh-clients
# chkconfig sshd on
# service sshd restart
HTTPD
# yum install -y httpd
# chkconfig --level 345 httpd on
# httpd -version
Server version: Apache/2.2.15 (Unix)
Server built: Jul 23 2014 14:17:29
# yum list 'php*'
// Нужна версия php >= 5.5
// В стандартном репо и в EPEL пока такой версии нет, поэтому
# rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
# yum install -y php56w
# yum install -y php56w-pdo
# yum install -y php56w-cli
# yum install -y php56w-xml
# yum install -y php56w-mbstring
# yum install -y php56w-intl
# yum install -y php-posix
# yum install -y php56w-pecl-xdebug
// APC (accelerator)
# yum install -y php56w-opcache
# php --version
PHP 5.6.0 (cli) (built: Aug 28 2014 19:25:44)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
with Xdebug v2.2.5, Copyright (c) 2002-2014, by Derick Rethans
# cp /etc/php.ini /etc/php.ini.orig
# vi /etc/php.ini
;date.timezone
на
date.timezone = Europe/Moscow
Добавляю стоку:
xdebug.max_nesting_level=250
# yum list 'mysql-server*'
5.1
### EPEL REPO (Нужно для REMI)
# rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
### REMI REPO
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
# yum --enablerepo=remi list mysql mysql-server
5.5
# yum --enablerepo=remi install -y mysql mysql-server
# chkconfig --level 345 mysqld on
№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№
Composer:
# cd /tmp
# yum install -y git curl
# curl -sS https://getcomposer.org/installer | php
# mv composer.phar /usr/local/bin/composer
# cd /var/www/html/
# composer create-project symfony/framework-standard-edition ./symvony_project_name 2.5.*
Если на следующий вопрос ответить Y, то будет создано тестовое приложение, показанное в самом низу.
Would you like to install Acme demo bundle? [y/N] Y
# cd symvony_project_name
# mkdir -p app/cache
# chown -R apache:apache app/cache app/logs
# cd /var/www/html/symvony_project_name/web
# vi config.php
Добавляю IP адрес клиентской машины, с которой планирую работать.
# vi app_dev.php
Добавляю IP адрес клиентской машины, с которой планирую работать.
http://192.168.1.21/symvony_project_name/web/config.php
=======================
# cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.orig
# vi /etc/httpd/conf/httpd.conf
Добавляю виртуальный хост в конец документа.
ServerName symfony2.dev
DocumentRoot "/var/www/html/symvony_project_name/web"
DirectoryIndex app.php
AllowOverride All
Allow from All
# service httpd restart
# service mysqld restart
В hosts на клиенте прописываем:
192.168.1.21 symfony2.dev
http://symfony2.dev/config.php
http://symfony2.dev/app_dev.php/
==============================
Столкнулся с проблемой.
На убунте (когда она использовалась как хост машина для контейнеров) их не было.
При попытке подключиться к контейнеру по SSH, после успешной авторизации, происходит разрыв соединения.
Не удавалось подключиться даже с контейнера к самому себе.
# netstat -anp | grep LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 65/sshd
tcp 0 0 :::22 :::* LISTEN 65/sshd
# ssh -vvv localhost
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
*****
debug3: channel 0: close_fds r -1 w -1 e 6 c -1
debug3: Wrote 32 bytes for a total of 1965
debug3: Wrote 64 bytes for a total of 2029
Connection to localhost closed.
Transferred: sent 1864, received 2128 bytes, in 0.0 seconds
Bytes per second: sent 623608.7, received 711931.0
debug1: Exit status 254
UPD:
Помогло следущее:
DOCKER:
# sed -ri 's/UsePAM yes/#UsePAM yes/g' /etc/ssh/sshd_config
# sed -ri 's/#UsePAM no/UsePAM no/g' /etc/ssh/sshd_config
# service sshd restart
======================================
https://webtatic.com/packages/php56/