За последние несколько недель я столько раз слышал об этом линуксе, что даже не описать. И знаете, я такое слышал уже не один раз. Не про Арч, а про какой-то дистрибутив. У дистрибутива появляются почитатели, они лезут во все дырки и начинают говорить насколько дистрибутив крутой. Чем более дистрибутив не понятный, тем больше люди, которые научились размечать диск в ручную считают себя элитой и больше кричат по всем углам. Не плохая реклама «отличного дистрибутива, не для всех».


Ну что же, я решил посмотреть, какой же он, этот Арч. Качаем исошник он весит всего 400Мб, кстати. Запускаемся и видим командную строчку. И все. Никакого инсталятора, никакого мастера настройки. Дежавю. Генту подумал я и даже крики вокруг были точно такие же. После несколькольких элементарных операций: разметка, сеть, chroot, груб и перезагрука, мы получаем систему. В ней ничего нет, есть менеджер пакетов Pacman, в котором, по факту, тоже почти ничего нет, сходу byobu которым я пользуюсь там не оказалось. Но оказалось, что существует йогурт (yaourt), которым можно заменить пакмен и больше никогда не пользоваться. Он немного странный, но пакетов там действительно много.

Ощущения от дистриба у меня в общем не однозначные, он ничем не лучше и не хуже убунты, которая стоит у меня уже много лет и любая проблема решается через гугл, т.к. пользователей у системы очень много. Что же с Арком? Посмотрим, я оставил его пока, посмотреть, попробовать.

 

Вот хочу еще добавить про Докер, у меня около 20 контейнеров сейчас крутиться т.к. докером я пользоваться начал давно и делал все по уму(читал умную книгу), то у меня сложены все Dockerfile в отдельных папках и, я надеюсь, все они работают. Поэтому я просто перенес папку с данными + папку с Dockerfile, сделал билд и тут же получил рабочий контейнер, внутри которого Убунту кстати. Вот такой вот Докер, он крутой.

Подводя итог, не важно какой у вас дистрибутив, пусть то RPM или DEB, все они в современном мире работают одинаково.

Захотелось немного описать процесс, который прошел я с самого начала, до текущего момента. Процесс именно усовершенствования выделенного сервера, от запуска его в ручную до практически полного автоматизма. Все начиналось банально, я случайно наткнулся на статью о установке сервера CS:GO, тут я понял, что сервера в этой игре может поставить любой желающий, честно говоря после Battlefield, где в открытом доступе ничего нет я уже и забыл, что так бывает. Оказалось, что у стима есть инструмент называемый SteamCMD, это по сути консольный клиент, но из него можно скачивать только серверные части игр. Некоторые с авторизацией, некоторые без. Процесс установки и настройки любой игры есть на сайте Valve, описывать его не буду, он тривиален. Дальше еще немного интересней, для некоторых игр, есть скрипт, ссылка на который опять же, есть на сайте Valve. Этот скрипт используя SteamCMD, устанавливает, апдейтит, следит за аптаймом и т.п.

Читать далее

KuDr42X_ITXghJhSInDZekNEF0jLt3NeVxtRye3tqco

Когда-то я уже писал о контейнерах в линуксе. Тогда же я смотрел и docker, но не проникся. Некоторое время назад мне попалась на глаза книга Orchestrating Docker и я решил, что стоит вникнуть. Вникание прошло успешно, идея мне очень понравилась и я начал понемногу переносить все с ESX, который стоит на моем стареньком сервачке, в контейнеры. Тут я могу долго описывать как это все круто, но думаю информацию о плюсах этой технологии можно почитать в интернете. Лично мне понравилось независимость процессов между собой, автоматическая перезагрузка процессов в случае их падения и простота бекапа. К примеру для бекапа сайта, нужно сохранить несколько текстовых файлов(помимо контента и базы) и развернуть потом из этого бекапа дело минут. Достаточно взять файл Dockerfile с примерно таким содержанием.

FROM ubuntu
RUN dpkg-divert --local --rename --add /sbin/initctl
RUN ln -sf /bin/true /sbin/initctl
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update
RUN apt-get -y install apache2 pwgen python-setuptools curl git unzip php5-curl php5-gd php5-intl php-pear \
    php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode\
    php5-sqlite php5-tidy php5-xmlrpc php5-xsl libapache2-mod-auth-mysql php5-mysql php5 libapache2-mod-php5 
ADD ./000-default.conf /etc/apache2/sites-enabled
RUN a2enmod rewrite

и запустить команду docker build -t inotkaa/wordpress .

и собственно после того как контейнер соберется, просто его запустить.

docker run -p 81:80 -d -v /opt/inot.pro:/var/www/html —restart=always —name inot.pro —link mysql_inot.pro:db001.local inotkaa/wordpress /usr/sbin/apache2ctl -D FOREGROUND

Естественно за этими командами стоит какой-то бекграунд, за которым я провел несколько часов, но в итоге все достаточно просто и быстро. Сейчас на ESX у меня остается всего пара тройка мало нужных задач, которые я в ближайшем будущем тоже перетащу в контейнеры. Еще один из плюсов это минимальные требования к железу, т.к. в контейнере по мимо задачи, которая там крутиться, больше ничего нет и издержки виртуализции, когда нужно держать целую виртуальную машину с системными процессами, скажет для сервера TeamSpeak, отходят на второй план.

Да и в общем все это было достаточно интересно изучить и потрогать.