1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/gongxusheng-docker-disconf

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Docker-Disconf

Docker-Disconf — это проект, созданный после изучения Docker с целью решения задачи пакетирования и запуска Disconf.

Disconf — это аббревиатура от платформы управления конфигурациями в распределённой среде (Distributed Configuration Management Platform). С помощью этой платформы можно использовать веб-интерфейс для централизованного управления всеми конфигурациями нескольких приложений и различных окружений. Disconf — это открытый проект на GitHub, доступный по адресу https://github.com/knightliao/disconf.

Disconf-web представляет собой серверную часть Disconf и предоставляет веб-интерфейс для управления распределёнными конфигурациями.

Подготовка

Для использования Docker-Disconf необходимы Dockerfile и примеры конфигураций, доступные для скачивания по адресу https://git.oschina.net/gongxusheng/docker-disconf.git. В этом руководстве предполагается, что пользователи уже установили Docker и Docker-compose, а также переместили файлы директории DockerDisconf в /home/ubuntu. Если вы распаковали файлы в другую директорию, вам потребуется скорректировать некоторые конфигурационные файлы и команды.

Упаковка Disconf с использованием Docker

Чтобы создать Docker-образ для упаковки Disconf-web, выполните следующие команды в директории disconf-build:```bash docker build -t yourimgs/disconf-build .


Для упаковки Disconf-war выполните следующую команду в директории disconf-build:

```bash
docker run -v ${PWD}/working:/home/work/dsp/disconf-rd/working \
    -v ${PWD}/config:/home/work/dsp/disconf-rd/online-resources \
    --name disconf-build yourimgs/disconf-build

Если были внесены изменения в файл properties, вы можете снова запустить контейнер disconf-build для упаковки:

docker start disconf-build

Развертывание и запуск Disconf с использованием Docker Compose

Развертывание Disconf использует Nginx, Tomcat, MySQL, Redis и ZooKeeper, как показано ниже:

Архитектура развертывания Disconf

Чтобы развернуть Disconf, выполните следующую команду в директории disconf-compose:

docker-compose up

После успешного запуска всех контейнеров вы сможете получить доступ к сервису Disconf-web по адресу http://yourhost:8081.

Конфигурирование клиента Disconf

Сначала следует настроить disconf.properties для указания на http://yourhost:8081. Клиент Disconf должен иметь возможность обращаться к Zookeeper, используя конфигурацию из файла /DockerDisconf/disconf-build/config/zoo.properties. Для унификации конфигураций Docker-Disconf использует конфигурацию disconf-zoo:2181, поэтому на хостах с клиентами требуется настроить файл hosts таким образом, чтобы имя хоста disconf-zoo было отображено на IP-адрес сервера, где запущен Docker.### Описание Эта глава относится к ранним версиям, в которых приведены много шагов. Рекомендовано использование метода развертывания через Docker Compose, описанного ранее.

  1. Запустите Redis-сервис, выполнив следующую команду:
docker run --name disconf-redis -d redis:3.0
  1. Запустите MySQL-сервис, находясь в директории disconf-mysql и выполнив:
docker run --name disconf-mysql -e MYSQL_ROOT_PASSWORD=passw0rd -v ${PWD}/files/sql:/docker-entrypoint-initdb.d \
    -v ${PWD}/data:/var/lib/mysql -d mysql:5.7
  1. Создайте ZooKeeper-сервис, находясь в директории disconf-zoo и выполнив:
docker build -t yourimgs/disconf-zoo .
docker run --name disconf-zoo -p 2181:2181 -d yourimgs/disconf-zoo
  1. Создайте образ приложения сервера, находясь в директории disconf-app и выполнив:
docker build -t yourimgs/disconf-app .
docker run -d --link disconf-mysql:disconf-mysql --link disconf-redis:disconf-redis --link disconf-zoo:disconf-zoo \
    -v /home/ubuntu/disconf-build/working/war:/home/work/dsp/disconf-rd/war --name disconf-app yourimgs/disconf-app
  1. В директории disconf-nginx выполните:
docker run --name disconf-nginx -v ${PWD}/nginx.conf:/etc/nginx/nginx.conf:ro \
    -v /home/ubuntu/disconf-build/working/war/html:/home/work/dsp/disconf-rd/war/html:ro \
    -v ${PWD}/logs:/home/work/var/logs/disconf -d -p 8081:8081 --link disconf-app:disconf-app nginx:1.9

После успешного запуска всех контейнеров вы сможете получить доступ к сервису Disconf-web по адресу http://yourhost:8081. Клиентская часть Disconf должна иметь возможность обращаться к Zookeeper, поэтому при настройке клиентской части Disconf следует настроить файл hosts так, чтобы имя хоста disconf-zoo было отображено на IP-адрес сервера, где запущен Docker.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Используйте Docker для упаковки и запуска Disconf-Web. Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/gongxusheng-docker-disconf.git
git@api.gitlife.ru:oschina-mirror/gongxusheng-docker-disconf.git
oschina-mirror
gongxusheng-docker-disconf
gongxusheng-docker-disconf
master