Работа с Polymer веб-компонентами в Docker контейнере


Docker + Polymer
Статья проведёт вас сквозь процесс создания Docker-образа на основе Alpine Linux с NodeJS и установку Polymer CLI внутри этого образа.

Для работы вам потребуется установленное рабочее окружение:

  • Linux
  • Docker

Подготовка файлов Docker

Создайте каталог проекта:

mkdir demo-app
cd demo-app

Создайте файл Dockerfile содержащий:

FROM node:alpine

RUN mkdir -p /usr/src/app \
    && npm install -g polymer-cli --unsafe-perm

WORKDIR /usr/src/app

CMD ["polymer", "serve"]

Создайте файл docker-compose.yml содержащий:

version: '3'

services:
  polymer:
    network_mode: host
    volumes:
      - .:/usr/src/app
    build: .

Создание образа Docker и инициализация проекта Polymer

Постройте образ Docker согласно настроенным правилам:

docker-compose build

Сгенерируйте проект Polymer с помощью мастера создания проекта:

docker-compose run polymer polymer init

Выберите пункт "A simple Polymer 3.0 application" как указано ниже:
Выбор типа проекта Polymer
Выберите прочие установки проекта:
Выбор прочих установок проекта Polymer
Итогом установки будут следующие файлы:
Сгенерированные файлы проекта
Осталось забрать себе права на сгенерированные файлы с пользователя root Docker-контейнера, для этого вам потребуются права суперпользователя:

sudo chown -R $USER:$GROUP .

Проект и образ готовы к использованию!

Работа с проектом

Запустите сервер встроенный в образ:

docker-compose up -d

Теперь приложение доступно в браузере по адресу http://localhost:8081.

Логи сервера доступны по команде docker-compose logs -f, для остановки вывода журнала нажмите комбинацию клавиш CTRL+C.

Остановить сервер можно с помощью docker-compose down.

Войти в консоль контейнера можно с помощью docker-compose run polymer sh, выход из консоли exit.

Приложение готово к локальной разработке и тестированию.


Comments 1


Text.ru - 81.05%

03.08.2018 16:17
0