LINUX.ORG.RU

Я въезжаю в докер

 


1

4

Решил попробовать его поюзать, но то ли я не правильно понимаю его назначение, то ли делаю что-то не так.

Накатал package.json, в котором все то, с чем я хочу работать:

{
    "name": "Test",
    "version": "0.0.1",
    "main": "server.js",
    "scripts": {
        "start": "node server.js"
    },
    "dependencies": {
        "express": "~4.15.3",
        "mongoose": "~4.10.7",
        "body-parser": "~1.17.2"
    }
}
Потом написал dockerfile:
# Create app directory
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

# Install app dependencies
COPY package.json /usr/src/app/
RUN npm install

# Bundle app source
COPY . /usr/src/app

VOLUME /usr/src/app

# Your app binds to port 8080
EXPOSE 8080

# Define the command to run your app 
CMD [ "npm", "start" ]
Собрал образ и... все работает! Но я не понял - как сделать какой нибудь livereload, чтобы я мог редактировать исходники на хост-машине и сразу видеть результат.

В общем, подскажите, как это реализовать?

Deleted

Стартуете вот такой контейнер

docker run --detach -v /opt/app:/usr/src/app --name container_name image_name

На хост-машине в /opt/app у вас будет локальная копия приложения. Ее редактируете, делаете docker restart container_name, запускается новая версия. Если ваше приложение само по себе умеет livereload, рестартить контейнер не надо.

Но вообще, емнип, если внутри образа в /usr/src/app были какие-то файлы, то при примонтировании туда локальной директории они затрутся. Но могу ошибаться.

l0stparadise ★★★★★
()
Последнее исправление: l0stparadise (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.