feat(docker): add local development environment

parent 0a243593
...@@ -2,6 +2,16 @@ ...@@ -2,6 +2,16 @@
Это базовый конфиг для запуска Docker окружения 1С-Битрикс на хосте посредством Gitlab CI. Это базовый конфиг для запуска Docker окружения 1С-Битрикс на хосте посредством Gitlab CI.
## Окружения
Текущая конфигурация предоставляет 3 окружения:
1. `development` - для локальной разработки проекта.
1. `staging` - для тестовой версии проекта на сервере.
1. `production` - для рабочей версии проекта.
В зависимости от окружения можно настроить отладку приложения для разработчиков, сборку проекта и т.д. используя переменные окружения в управляющих скриптах.
## Как с этим работать ## Как с этим работать
1. Настроить Docker окружение для разработки и продакшена: добавить необходимые сервисы с образами, задать переменные окружения,подключить директорию `www` с проектом и т.д. `zk-entrypoint.sh` и `build.sh` обязательные скрипты! 1. Настроить Docker окружение для разработки и продакшена: добавить необходимые сервисы с образами, задать переменные окружения,подключить директорию `www` с проектом и т.д. `zk-entrypoint.sh` и `build.sh` обязательные скрипты!
......
# Define development environment variables # Define development environment variables
VIRTUAL_HOST=staging.1.dev.1119.zolotoykod.ru
ENVIRONMENT=development ENVIRONMENT=development
version: '2'
services:
bitrix:
image: zolotoykod/bitrix:latest
volumes:
- bitrix:/home/bitrix/www/bitrix:Z
- upload:/home/bitrix/www/upload:Z
- data:/var/lib/mysql:Z
- ./docker/zk-entrypoint.sh:/zk-entrypoint.sh:Z
- ./docker/link_bx.sh:/link_bx.sh:Z
- ./docker/build.sh:/build.sh:Z
- ./www:/home/bitrix/site:Z
- ./docker/apache/bitrix.conf:/etc/httpd/bx/conf/default.conf:Z
- ./docker/nginx/bitrix.conf:/etc/nginx/bx/site_avaliable/s1.conf:Z
- ./docker/apache/site.conf:/etc/httpd/bx/conf/site.conf:Z
- ./docker/nginx/site.conf:/etc/nginx/bx/site_enabled/site.conf:Z
ports:
- "${BITRIX_PORT}:8080"
- "${SITE_PORT}:80"
- "22"
environment:
- HOME=/home/bitrix
env_file: ./staging.env
command: /bin/bash /zk-entrypoint.sh
working_dir: /home/bitrix
tty: true
volumes:
data:
driver: local
bitrix:
driver: local
upload:
driver: local
...@@ -9,8 +9,10 @@ if [ ! -z "$GROUP_ID" ]; then ...@@ -9,8 +9,10 @@ if [ ! -z "$GROUP_ID" ]; then
groupmod -g $GROUP_ID bitrix groupmod -g $GROUP_ID bitrix
fi fi
# Set permissions # Set permissions if user changed
chown -R bitrix.bitrix /home/bitrix if [ ! -z "$USER_ID" ] && [ ! -z "$GROUP_ID" ]; then
chown -R bitrix.bitrix /home/bitrix
fi
# Start server # Start server
/bin/bash /run.sh /bin/bash /run.sh
# Define development environment variables
VIRTUAL_HOST=staging.1.dev.1119.zolotoykod.ru
ENVIRONMENT=staging
#!/bin/bash #!/bin/bash
export USER_ID="$(id -u `whoami`)" export USER_ID="$(id -u `whoami`)"
export GROUP_ID="$(id -g `whoami`)" export GROUP_ID="$(id -g `whoami`)"
docker-compose up -d docker-compose -f docker-compose.staging.yml up -d
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment