dev окружение для удобной локальной разработки под bitrix
639
Как можно развернуть у себя локально bitrix в docker по шагам и работать с ним по ssh или по специальному плагину в vscode
ИНФОРМАЦИЯ: Контейнер не несет цели правильного развертывания bitrix, а нужен для быстрого старта локальной разработки на bitrix. Данный контейнер будет полезен для разработчиков.
Для разворачивания docker c bitrix необходимо создать docker-compose.yml со следующим содержимым. Подробнее о контейнере в пункте "Предлагаемые сборки с bitrix"
version: '3'
services:
vmbitrix:
image: akrid782/bitrix:vmbitrix
ports:
- "80:80" #для http
- "443:443" #для https
- "8080:22" #для ssh т.е подключение будет проходить через порт 8080
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
cap_add:
- ALL
Далее открываем консоль (cmd) в директории где лежит файл docker-composer.yml и выполняем команду для сборки и запуска контейнера:
docker-compose build --no-cache && docker-compose up -d
С момента установки, bitrix будет доступна по следующей ссылке http://localhost:80
Заходим в контейнер, при помощи следующих команд:
docker ps
Это команда выводит список поднятых контейнеров и нам нужен CONTAINER ID. После того как получили CONTAINER ID выполняем следующею команду
docker exec -it [CONTAINER ID] bash
Это команда позволяет попасть в bash среду контейнера. На windows может появится ошибка и нам предложат добавить в команду winpty.
winpty docker exec -it [CONTAINER ID] bash
После того как попали в окружение контейнера пишем в консольке следующее:
/root/menu.sh
После выполнения выше указанной команды, откроется меню где будет требовать установить пароль для пользователя bitrix. После того как пароль был установлен, вы следующей меню нажимаем 1 и жмем enter и еще два раза enter, ничего не заполняем. После проделанных манипуляций откроется меню в котором можно обновить mysql, переключить версию php и еще другие настройки. Официальная документация bitrix по bitrix menu → https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=37&LESSON_ID=8811
После проделанных настроек мы можешь подключиться по ssh через пользователя bitrx.
Host docker-bitrix #Просто наименование подключения, тут не важно
HostName localhost #Тут может быть IP машины где развернут этот контейнер
User bitrix #Пользователь которого мы настроили ранее
Port 8080 #Порт для ssh который был указан в docker-compose.yml
Ну и ваш портал будет находится после установки по пути /home/bitrix/www/ по умолчанию.
ВНИМАНИЕ: Все измененные файлы и все действия будут проводится от пользователя root, по этому вариант ssh будет предпочтительней.
Устанавливаем плагин docker https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-docker.
Пароль пользователя root:
258852qw
Пароль root для MySQL (Mysql password for root user):
258852qw
Включенные параметры в конфигурации xdebug:
xdebug.remote_enable=1
xdebug.remote_autostart=1
xdebug.remote_port=9000
xdebug.mode=debug
xdebug.idekey=PHPSTORM
Пароль пользователя bitrix не стоит, необходим пройти пункт → "Настройка пользователя bitrix"
akrid782/bitrix:vmbitrix- контейнер только с установленными необходимыми пакетами для работы. Сюда входят следующие пакеты:
Это основной контейнер, на основе которого будут строиться перечисленные ниже ↓
frontend developer bitrix - контейнер для верстальщиков на bitrix и frontend разработчиков. Сюда выходят следующие пакеты: Все пакеты из контейнера akrid782/bitrix:vmbitrix;
docker-compose.yml
version: '3'
services:
vmbitrix:
build: ./
ports:
- "80:80" #для http
- "443:443" #для https
- "8080:22" #для ssh т.е подключение будет проходить через порт 8080
- "3000:3000" #Для GUI vue ui
- "3001:3001" #Для serve приложения vue
#Сюда можно вписать еще порты если надо будет запускать сервер приложения vue
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
cap_add:
- ALL
dockerfile
FROM akrid782/bitrix:vmbitrix
RUN yum clean all && yum update -y
RUN curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
RUN curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
RUN rpm --import https://dl.yarnpkg.com/rpm/pubkey.gpg
RUN yum makecache fast
RUN yum install -y gcc-c++ make nodejs yarn
RUN npm install -g @bitrix/cli && npm install -g @vue/cli
EXPOSE 3000
CMD ["/usr/sbin/init"]
Команда для запуска GUI внутри контейнера
vue ui --headless --port 3000 --host 0.0.0.0
ВНИМАНИЕ: данная команда должна запускаться от пользователя bitrix, в противном случае подключившись по ssh вы не сможете редактировать созданное приложение, через менеджер проектов vue.
✔ fullstack developer bitrix - контейнер для fullstack разработки на bitrix, php и vue. Сюда выходят следующие пакеты:
docker-compose.yml
version: '3'
services:
vmbitrix:
build: ./
ports:
- "80:80" #для http
- "443:443" #для https
- "8080:22" #для ssh т.е подключение будет проходить через порт 8080
- "3000:3000" #Для GUI vue ui
- "3001:3001" #Для serve приложения vue
#Сюда можно вписать еще порты если надо будет запускать сервер приложения vue
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
cap_add:
- ALL
dockerfile
FROM akrid782/bitrix:vmbitrix
RUN yum clean all && yum update -y
### FRONTEND START ###
RUN curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
RUN curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
RUN rpm --import https://dl.yarnpkg.com/rpm/pubkey.gpg
RUN yum makecache fast
RUN yum install -y gcc-c++ make nodejs yarn
RUN npm install -g @bitrix/cli && npm install -g @vue/cli
### END ###
### BACKEND ###
RUN yum install -y php-pear-PhpDocumentor supervisor php-cli php-zip wget unzip phpcs
RUN cd ~ && php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
ENV HASH="$(wget -q -O - https://composer.github.io/installer.sig)"
RUN cd ~ php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
RUN mv /etc/php.d/20-phar.ini.disabled /etc/php.d/20-phar.ini \
&& cd ~ && php composer-setup.php --install-dir=/usr/local/bin --filename=composer \
&& composer global require "squizlabs/php_codesniffer=*" \
&& mv /etc/php.d/30-xmlreader.ini.disabled /etc/php.d/30-xmlreader.ini \
&& mv /etc/php.d/20-xmlwriter.ini.disabled /etc/php.d/20-xmlwriter.ini
### END ###
CMD ["/usr/sbin/init"]
Далее все описание есть уже в frontend developer bitrix то как запускать vue ui
Content type
Image
Digest
Size
856.6 MB
Last updated
over 4 years ago
docker pull akrid782/bitrix:vmbitrix