Table of Contents |
---|
Обзор образа
Образ для Докера:
- Использует Ubuntu 16.04 в качестве базового образа.
- Внутри образа приложение находится в папке
/iqchannels
. - Содержит дополнительные пакеты:
- libaio1
- ca-certificates
- webp
- imagemagick
- Идет с установленным и настроенным клиентом для Oracle instantclient_12_1.
- Заданы
/etc/default/locale
:- LANG=en_US.UTF-8
LC_ALL=en_US.UTF-8
LANGUAGE=en_US:en
- LANG=en_US.UTF-8
Структура папки /iqchannels
:
bin
— скомпилированные бинарные файлы приложения, скрипты управления приложением.config
— конфигурационные файлы и тестовые данные.- migrations — файлы миграций для баз данных.
static
— статические файлы (JavaScript, CSS, картинки и т.д.)var/run
,var/log
,var/upload
— папки для логов, pid-файлов (в Unix) и загружаемого пользовательского контента.
Установка
1) Выберите требуемый образ со страницы Релизы.
Code Block |
---|
docker.iqstore.ru/iqchannels:2017.2.0 |
2) Создайте папки для хранения внешних данных контейнера.
Code Block |
---|
$ mkdir -p var/log var/run var/upload |
3) Создайте файл конфигурации config.yaml
.
4) Укажите настройки базы данных в config.yaml
.
PostgreSQL:
Code Block |
---|
db:
type: postgres
connect: port=5432 dbname=iqchannels user=iqchannels password=secret sslmode=disable
max_idle: 4 # Max idle connections in a connection pool.
max_open: 12 # Max open connections in a connection pool. |
SQL Server:
Code Block |
---|
db:
type: mssql
connect: port=1433;database=iqchannels;user id=sa;password=Secret22;encrypt=disable
max_idle: 4 # Max idle connections in a connection pool.
max_open: 12 # Max open connections in a connection pool. |
Oracle:
Code Block |
---|
# Use DNS to specify a connection string (user/password@host:port/sid).
db:
type: oracle
connect: iqchannels/secret@localhost:1521/xe
max_idle: 4 # Max idle connections in a connection pool.
max_open: 12 # Max open connections in a connection pool. |
5) Опционально, укажите другие настройки сервера в config.yaml
. Настройки по умолчанию со всеми комментариями доступны в файле config/config.yaml
из архива релиза для любой ОС.
6) Запустите скрипты миграции базы данных:
Code Block |
---|
docker run -it --rm \
--net=host \
-v /absolute-path-to/config.yaml:/iqchannels/config/config.yaml \
-v /absolute-path-to/var:/iqchannels/var \
docker.iqstore.ru/iqchannels:2017.2.0 \
migrate |
7) Запустите контейнер с приложением в фоновом режиме (-d):
Code Block |
---|
docker run -it -d \
--name=iqchannels \
--net=host \
-v /absolute-path-to/config.yaml:/iqchannels/config/config.yaml \
-v /absolute-path-to/var:/iqchannels/var \
docker.iqstore.ru/iqchannels:2017.2.0 \
run |
8) Готово. Проверьте, что сервер запущен:
10) Перейдите к Настройке приложения.
Комментарии:
При необходимости, замените --net=host
на сопоставление портов:
Code Block |
---|
-p 3001:3001 -p 3002:3002 |