С недавнего времени я начал использовать в качестве основной операционной системы Ubuntu, оставив старый Win 7 второй системой для игр. Я любитель менять свои машины для написания кода, поэтому мне часто приходится деплоить всё необходимое разработки, включая сервер, на очередной новой машине. Дошло до такого, что у меня со временем возникла идея написать bash скрипт, который будет содержать команды по установке всего необходимого, но руки все еще до дела не дошли.
Возможно, сделаю позже, когда буду очередной раз менять свой рабочий агрегат.
Что конкретно я считаю нужным для PHP разработки на Ubuntu:
1) JDK для установки жизненно необходимого софта
2) Установка PHPStorm
3) Установка и настройка веб-сервера
4) Установка Git и настройка SSH
5) Установка и настройка Composer"
Когда я первый раз сел за Ubuntu, изучив базовые команды для терминала, я начал разбираться: как же мне работать дальше? И, будучи новичком, я практически на каждом этапе натыкался на ту или иную проблему. Благо решение на все давно уже таилось в Google, но порой, чтобы найти его, мне требовались хорошие знания английского языка. Задача данного поста так же разобрать те или иные проблемы, которые могут возникнуть при установке вышеописанного. В конце я добавлю немного вкусностей, которые мне попадались за последнее время.
1. Установка JDK
Ну тут всё просто и делается одной командой:
2. Скачиваем и устанавливаем PHPStorm
Данный пункт не является обязательным, но всё же я его включил, т.к. по многим причинам это лучшая IDE для разработки на PHP.
Для начала нам требуется — скачать архив с официального сайта. Это можно сделать вручную по ссылке, либо скачать через терминал последнюю на данный момент версию:
Далее распоковываем его и открываем папку bin в терминале:
Первая команда здесь распаковывает архив с PHPStorm по регулярному выражению «PhpStorm-*» — звездочкой в конце мы сообщаем системе, чтобы она распаковала нам архив, имя которого соответствует данному регулярному выражению, т.е. подойдут такие имена как:
PhpStorm-8.0.3.tar.gz
PhpStorm-9.0.2.tar.gz
PhpStorm-10.0.1.tar.gz
Я написал так для того чтобы данный список команд не был привязан к версии PHPStorm, ведь когда-то лично я запутался на данном этапе и выполнял распаковку архива по версии, указанной в одном из туториалов, которая совершенно не совпадала с версией загруженной мной на тот момент IDE.
Вторая и последующая команда заходит в распакованную папку и далее — в дерикторию bin, где хранится sh файл для установки PHPStorm. Далее, четвертой командой мы делаем файл исполняемым. И уже последняя команда запускает графический интерфейс установки IDE на ваш компьютер.
Следующей проблемой, которая мало где затрагивалась и поднималась — возможность запускать IDE с панели, чтобы постоянно не запускать phpstorm.sh. Для этого, как оказалось, нужно сделать следующее:
1. Переходим в окно с PHPStorm и нажимаем на вкладку Tools
2. Далее нажимаем на вкладку Create Desktop Entry
3. Радуемся в дальнейшем
3.Установка и настройка веб-сервера
Очень прост в установке оказался Lamp-Server:
Далее очень важный момент, дабы избавиться от белого экрана смерти, включаем ошибки в PHP.ini. Найти его в вашей системе можно будет таким образом:
Далее открываем его в одном из редакторов на свой вкус и меняем следующие директивы:
display_errors = On
display_startup_errors = On
html_errors = On
4. Установка Git и настройка SSH
Первая команда установит нам Git, а вторая сгенерирует публичный и приватный ssh-ключи, которые будут доступны из директории ~/.ssh в дальнейшем.
Ну тут в приниципе ничего подводного из камней нету, за исключением одного нюанса, с которым я столкнулся, но это все произошло исключительно из-за моей невнимательности при генерировании ключа:
Если внимательно посмотреть, то можно догадаться, что ключ будет сгенерирован в директории /root/.ssh и, следовательно, все команды, которые связаны с SSH в дальнейшем должны будут выполняться через root — это не очень удобно. А если выполнять без прав суперпользователя, то у нас уже не будет нужного ssh ключа и, разумеется, настроения тоже.
5. Установка и настройка Composer
Установка менеджера зависимостей производится достаточно просто:
Но тут я бы хотел обратить ваше внимание на одну очень удобную вещь:
Теперь нам не нужно всегда устанавливать в нужную директорию новых проектов Composer первой командой, ибо он теперь доступен из глобали:
Теперь, как и обещал, расскажу про вкусности, которые я недавно для себя открыл:
1. TheFuck
Данная программа позволяет всего лишь одной командой исправить ошибку из предыдущей команды, что избавляет нас от ручного исправления. Иногда я часто путаюсь в наборе команд, пропуская ту или иную букву. На помощь мне приходит TheFuck, как бы то странно не звучало. Рассмотрим конкретные случаи:
Здесь допущена ошибка — «instal», разумеется команда не выполнится и в консоль выдаст ошибку.
Не расстраиваемся и, не возвращаясь к предыдущей команде, чтобы исправить и выполнить её вновь, просто пишем:
Он тут же предложит нам правильный вариант и нам останется только нажать Enter.
Установка:
2.Возможности X.ORG для масштабирования экрана
Еще одним очень интересным открытием для меня было масштабирование экрана через X.org. Это очень помогало мне следить «одновременно» за такими вещами как:
1) SSH консоль мастер сервера
2) IDE
3) Окно браузера
Когда ты разрабатываешь с одним монитором, данные вариации не очень удобны и затрачивают много сил, а иногда даже сбивают с контекста задачи, пока ты бегаешь туда-сюда от окна к окну. Следующая команда увеличит масштаб вашего монитора:
Разумеется, задействовать FullHD не получится, но все же штука достаточно прикольная
Если у вас вышла примерно такая ситуация, что показана ниже:
Тогда попробуйте использовать eDP, а не eDP1, скорее всего проблема решится.
Вернуть все в прежний режим можно командой:
Возможно, сделаю позже, когда буду очередной раз менять свой рабочий агрегат.
Что конкретно я считаю нужным для PHP разработки на Ubuntu:
1) JDK для установки жизненно необходимого софта
2) Установка PHPStorm
3) Установка и настройка веб-сервера
4) Установка Git и настройка SSH
5) Установка и настройка Composer"
Когда я первый раз сел за Ubuntu, изучив базовые команды для терминала, я начал разбираться: как же мне работать дальше? И, будучи новичком, я практически на каждом этапе натыкался на ту или иную проблему. Благо решение на все давно уже таилось в Google, но порой, чтобы найти его, мне требовались хорошие знания английского языка. Задача данного поста так же разобрать те или иные проблемы, которые могут возникнуть при установке вышеописанного. В конце я добавлю немного вкусностей, которые мне попадались за последнее время.
1. Установка JDK
Ну тут всё просто и делается одной командой:
$ sudo apt-get install default-jdk
2. Скачиваем и устанавливаем PHPStorm
Данный пункт не является обязательным, но всё же я его включил, т.к. по многим причинам это лучшая IDE для разработки на PHP.
Для начала нам требуется — скачать архив с официального сайта. Это можно сделать вручную по ссылке, либо скачать через терминал последнюю на данный момент версию:
$ wget https://download.jetbrains.com/webide/PhpStorm-9.0.2.tar.gz
Далее распоковываем его и открываем папку bin в терминале:
$ tar -xvf PhpStorm-*.tar.gz
$ cd PhpStorm-*
$ cd bin
$ sudo chmod +x phpstorm.sh
$ sudo ./phpstorm.sh
Первая команда здесь распаковывает архив с PHPStorm по регулярному выражению «PhpStorm-*» — звездочкой в конце мы сообщаем системе, чтобы она распаковала нам архив, имя которого соответствует данному регулярному выражению, т.е. подойдут такие имена как:
PhpStorm-8.0.3.tar.gz
PhpStorm-9.0.2.tar.gz
PhpStorm-10.0.1.tar.gz
Я написал так для того чтобы данный список команд не был привязан к версии PHPStorm, ведь когда-то лично я запутался на данном этапе и выполнял распаковку архива по версии, указанной в одном из туториалов, которая совершенно не совпадала с версией загруженной мной на тот момент IDE.
Вторая и последующая команда заходит в распакованную папку и далее — в дерикторию bin, где хранится sh файл для установки PHPStorm. Далее, четвертой командой мы делаем файл исполняемым. И уже последняя команда запускает графический интерфейс установки IDE на ваш компьютер.
Следующей проблемой, которая мало где затрагивалась и поднималась — возможность запускать IDE с панели, чтобы постоянно не запускать phpstorm.sh. Для этого, как оказалось, нужно сделать следующее:
1. Переходим в окно с PHPStorm и нажимаем на вкладку Tools
2. Далее нажимаем на вкладку Create Desktop Entry
3. Радуемся в дальнейшем
3.Установка и настройка веб-сервера
Очень прост в установке оказался Lamp-Server:
$ sudo apt-get install tasksel
$ sudo tasksel install lamp-server
Далее очень важный момент, дабы избавиться от белого экрана смерти, включаем ошибки в PHP.ini. Найти его в вашей системе можно будет таким образом:
$ locate php.ini
Далее открываем его в одном из редакторов на свой вкус и меняем следующие директивы:
display_errors = On
display_startup_errors = On
html_errors = On
4. Установка Git и настройка SSH
$ sudo apt-get install git
$ ssh-keygen
Первая команда установит нам Git, а вторая сгенерирует публичный и приватный ssh-ключи, которые будут доступны из директории ~/.ssh в дальнейшем.
Ну тут в приниципе ничего подводного из камней нету, за исключением одного нюанса, с которым я столкнулся, но это все произошло исключительно из-за моей невнимательности при генерировании ключа:
$ sudo ssh-keygen
Если внимательно посмотреть, то можно догадаться, что ключ будет сгенерирован в директории /root/.ssh и, следовательно, все команды, которые связаны с SSH в дальнейшем должны будут выполняться через root — это не очень удобно. А если выполнять без прав суперпользователя, то у нас уже не будет нужного ssh ключа и, разумеется, настроения тоже.
5. Установка и настройка Composer
Установка менеджера зависимостей производится достаточно просто:
$ curl -sS https://getcomposer.org/installer | php
Но тут я бы хотел обратить ваше внимание на одну очень удобную вещь:
$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
Теперь нам не нужно всегда устанавливать в нужную директорию новых проектов Composer первой командой, ибо он теперь доступен из глобали:
$ composer install
...
Теперь, как и обещал, расскажу про вкусности, которые я недавно для себя открыл:
1. TheFuck
Данная программа позволяет всего лишь одной командой исправить ошибку из предыдущей команды, что избавляет нас от ручного исправления. Иногда я часто путаюсь в наборе команд, пропуская ту или иную букву. На помощь мне приходит TheFuck, как бы то странно не звучало. Рассмотрим конкретные случаи:
$ sudo apt-get instal phpmyadmin
E: Invalid operation instal
Здесь допущена ошибка — «instal», разумеется команда не выполнится и в консоль выдаст ошибку.
Не расстраиваемся и, не возвращаясь к предыдущей команде, чтобы исправить и выполнить её вновь, просто пишем:
$ fuck
Он тут же предложит нам правильный вариант и нам останется только нажать Enter.
Установка:
git clone git@github.com:nvbn/thefuck.git
cd the fuck
sudo chmod +x install.sh
./install.sh
2.Возможности X.ORG для масштабирования экрана
Еще одним очень интересным открытием для меня было масштабирование экрана через X.org. Это очень помогало мне следить «одновременно» за такими вещами как:
1) SSH консоль мастер сервера
2) IDE
3) Окно браузера
Когда ты разрабатываешь с одним монитором, данные вариации не очень удобны и затрачивают много сил, а иногда даже сбивают с контекста задачи, пока ты бегаешь туда-сюда от окна к окну. Следующая команда увеличит масштаб вашего монитора:
$ xrandr --output eDP1 --panning 1920x1080 --scale 1.405x1.405
Разумеется, задействовать FullHD не получится, но все же штука достаточно прикольная
Если у вас вышла примерно такая ситуация, что показана ниже:
$ xrandr --output eDP1 --panning 1920x1080 --scale 1.405x1.405
warning: output eDP1 not found; ignoring
Тогда попробуйте использовать eDP, а не eDP1, скорее всего проблема решится.
$ xrandr --output eDP --panning 1920x1080 --scale 1.405x1.405
Вернуть все в прежний режим можно командой:
$ xrandr --output eDP1 --panning 1366x168 --scale 1x1
Комментарии (10)
Delphinum
23.10.2015 13:52Дошло до такого, что у меня со временем возникла идея написать bash скрипт, который будет содержать команды по установке всего необходимого, но руки все еще до дела не дошли
Берете весь Bash из статьи, копируете в файл, добавляете права, тестируете — получаете ваш скрипт.
Old_Chroft
23.10.2015 13:58+2Ну о**еть… Еще один ПРЕВОЗМОГ поиск в гугле и Quick Start из доков.
Dead_Angel
23.10.2015 16:04Кто и зачем отбирает эти посты? Еще и инвайты раздают. На хабре за последнее время участилось число «мега» постов, которые сводятся к одному, просто перевод документации, причем не всегда правильный перевод
EvilBeaver
А еще есть уже готовые docker-машины на любой вкус
romy4
Позвольте людям учиться и понимать как работает каждый шаг, а не выращивать php-домохозяек.
EvilBeaver
В docker тоже есть что попонимать.
Delphinum
Для того, чтобы начать пользоваться Docker нужно узнать, что такое Bash, SSH, Git, возможно rsync (еси речь о Windows), а узнать об этом можно только попробовав все вне Docker.
EvilBeaver
ну вот же. А romy4 говорит «для домохозяек»…