久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

<tfoot id='qsTvW'></tfoot>

      • <bdo id='qsTvW'></bdo><ul id='qsTvW'></ul>
    1. <legend id='qsTvW'><style id='qsTvW'><dir id='qsTvW'><q id='qsTvW'></q></dir></style></legend>

      <i id='qsTvW'><tr id='qsTvW'><dt id='qsTvW'><q id='qsTvW'><span id='qsTvW'><b id='qsTvW'><form id='qsTvW'><ins id='qsTvW'></ins><ul id='qsTvW'></ul><sub id='qsTvW'></sub></form><legend id='qsTvW'></legend><bdo id='qsTvW'><pre id='qsTvW'><center id='qsTvW'></center></pre></bdo></b><th id='qsTvW'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='qsTvW'><tfoot id='qsTvW'></tfoot><dl id='qsTvW'><fieldset id='qsTvW'></fieldset></dl></div>
      1. <small id='qsTvW'></small><noframes id='qsTvW'>

        如何在 docker 容器中使用 gulp 運行 livereload?

        How to run livereload with gulp within a docker container?(如何在 docker 容器中使用 gulp 運行 livereload?)
          <tbody id='thwbp'></tbody>
        <i id='thwbp'><tr id='thwbp'><dt id='thwbp'><q id='thwbp'><span id='thwbp'><b id='thwbp'><form id='thwbp'><ins id='thwbp'></ins><ul id='thwbp'></ul><sub id='thwbp'></sub></form><legend id='thwbp'></legend><bdo id='thwbp'><pre id='thwbp'><center id='thwbp'></center></pre></bdo></b><th id='thwbp'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='thwbp'><tfoot id='thwbp'></tfoot><dl id='thwbp'><fieldset id='thwbp'></fieldset></dl></div>

        <small id='thwbp'></small><noframes id='thwbp'>

          <tfoot id='thwbp'></tfoot><legend id='thwbp'><style id='thwbp'><dir id='thwbp'><q id='thwbp'></q></dir></style></legend>
          • <bdo id='thwbp'></bdo><ul id='thwbp'></ul>

                1. 本文介紹了如何在 docker 容器中使用 gulp 運行 livereload?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  限時送ChatGPT賬號..

                  我創建了一個 docker 容器來使用 gulp 運行任務.所有任務都在運行,問題是我無法在 Chrome 中啟用 livrereload,盡管我在容器中暴露了 35729 端口.

                  I created a docker container to run tasks with gulp. All tasks are running, the problem is I can't enable livrereload in Chrome although I exposed the 35729 port in my container.

                  這里是 Dockerfile:

                  Here is the Dockerfile :

                  FROM ubuntu:latest
                  MAINTAINER jiboulex
                  
                  EXPOSE 80 8080 3000 35729
                  
                  RUN apt-get update
                  RUN apt-get install curl -y
                  RUN apt-get install software-properties-common -y
                  RUN add-apt-repository ppa:chris-lea/node.js
                  RUN apt-get update
                  RUN apt-get install nodejs -y
                  RUN curl -L https://www.npmjs.com/install.sh | sh
                  RUN npm install --global gulp -y
                  
                  # overwrite this with 'CMD []' in a dependent Dockerfile
                  CMD ["/bin/bash"]
                  

                  我使用以下命令創建圖像:

                  I create the image with the following command :

                  docker build -t gulp_image .
                  

                  我創建了一個容器:

                  docker run --name=gulp_container -i -t  --rm  -v /var/www/my_app:/var/www/my_app:rw gulp_image bash
                  

                  然后在我的容器中

                  cd /var/www/my_app
                  gulp
                  

                  這是我的 Gulpfile.js

                  Here is my Gulpfile.js

                  var gulp = require('gulp'),
                  livereload = require('gulp-livereload'),
                  exec = require('child_process').exec;
                  gulp.task('js', function() {
                  gulp.src([
                      './src/js/*.js'
                  ]).pipe(livereload());
                  });
                  gulp.task('watch', function(){
                  var onChange = function (event) {
                      console.log('File '+event.path+' has been '+event.type);
                  };
                  livereload.listen();
                  gulp.watch([
                      './src/js/*.js'
                  ], ['js'])
                      .on('change', onChange);
                  });
                  gulp.task('default', ['watch', 'js']);
                  

                  當我編輯一個 js 文件時,我可以在我的容器中看到文件已被處理,但是當我嘗試在我的瀏覽器 (Chrome) 中啟用實時重新加載時,我收到以下消息:無法連接到 LiveReload 服務器.."

                  When I edit a js file, I can see in my container that the files are processed but when I try to enable live reload in my browser (Chrome), I got the following message : "Could not connect to LiveReload server.."

                  有人知道我錯過了什么或沒有做什么嗎?感謝閱讀!

                  Anyone got a clue about what I missed or didn't do ? Thanks for reading !

                  推薦答案

                  在容器中暴露端口并不意味著將在 docker 主機上打開端口.您應該使用 docker run -p 選項.文檔說:

                  Exposing ports in a container does not imply that the ports will be opened on the docker host. You should be using the docker run -p option. The documentation says:

                  -p=[] : 將容器的端口或一系列端口發布到主機

                  -p=[] : Publish a container?s port or a range of ports to the host

                  格式: ip:hostPort:containerPort |ip::containerPort |hostPort:containerPort |containerPort

                  hostPortcontainerPort 都可以指定為一個端口范圍.

                  Both hostPort and containerPort can be specified as a range of ports.

                  為兩者指定范圍時,范圍內的容器端口數必須與范圍內的主機端口數匹配.(例如,-p 1234-1236:1234-1236/tcp)(使用 'docker port' 查看實際映射)

                  When specifying ranges for both, the number of container ports in the range must match the number > of host ports in the range. (e.g., -p 1234-1236:1234-1236/tcp) (use 'docker port' to see the actual mapping)

                  由于您嘗試了 -p containerPort 形式,當您運行 docker run 命令時,docker 會隨機選擇在您的主機(Linux mint)上打開的實際端口.要確定選擇了哪個端口,您必須使用 docker port 命令.

                  Since you tried the -p containerPort form, the actual port opened on your host (Linux mint) was randomly chosen by docker when you run the docker run command. To figure out what port was chosen, you have to use the docker port command.

                  由于不方便,所以應該使用-p hostPort:containerPort形式,并指定hostPort35729.(我還假設您希望端口 80、8080 和 3000 可以以相同的方式訪問)

                  Since this is not convenient, you should use the -p hostPort:containerPort form, and specify that hostPort is 35729. (I also assume you expect ports 80, 8080 and 3000 to be accessible in the same manner)

                  運行容器的命令是:

                  docker run --name=gulp_container -i -t --rm 
                      -v /var/www/my_app:/var/www/my_app:rw 
                      -p 35729:35729 
                      -p 80:80 
                      -p 8080:8080 
                      -p 3000:3000 
                      gulp_image bash
                  

                  處理端口的更簡單方法是在 主機網絡模式下運行 docker 容器.在這種模式下,在容器上打開的任何端口實際上都是在主機網絡接口上打開的(它們實際上都是共享同一個接口).

                  An easier way to deal with ports is to run your docker container in host networking mode. In this mode, any port opened on the container is in fact opened on the host network interface (they are actually both sharing the same interface).

                  然后您將使用以下命令啟動您的容器:

                  You would then start your container with:

                  docker run --name=gulp_container -i -t --rm 
                      -v /var/www/my_app:/var/www/my_app:rw 
                      --net=host  
                      gulp_image bash
                  

                  這篇關于如何在 docker 容器中使用 gulp 運行 livereload?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                  【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                  相關文檔推薦

                  Browserify, Babel 6, Gulp - Unexpected token on spread operator(Browserify,Babel 6,Gulp - 傳播運算符上的意外令牌)
                  Is it possible to pass a flag to Gulp to have it run tasks in different ways?(是否可以將標志傳遞給 Gulp 以使其以不同的方式運行任務?)
                  Why do we need to install gulp globally and locally?(為什么我們需要在全局和本地安裝 gulp?)
                  How to run Gulp tasks sequentially one after the other(如何一個接一個地依次運行 Gulp 任務)
                  Stylesheet not loaded because of MIME-type(由于 MIME 類型而未加載樣式表)
                  Visual Studio 2015 crashes when opening Javascript files(打開 Javascript 文件時 Visual Studio 2015 崩潰)
                    <tbody id='i22xc'></tbody>
                    <legend id='i22xc'><style id='i22xc'><dir id='i22xc'><q id='i22xc'></q></dir></style></legend>
                    <i id='i22xc'><tr id='i22xc'><dt id='i22xc'><q id='i22xc'><span id='i22xc'><b id='i22xc'><form id='i22xc'><ins id='i22xc'></ins><ul id='i22xc'></ul><sub id='i22xc'></sub></form><legend id='i22xc'></legend><bdo id='i22xc'><pre id='i22xc'><center id='i22xc'></center></pre></bdo></b><th id='i22xc'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='i22xc'><tfoot id='i22xc'></tfoot><dl id='i22xc'><fieldset id='i22xc'></fieldset></dl></div>

                      <bdo id='i22xc'></bdo><ul id='i22xc'></ul>

                      1. <small id='i22xc'></small><noframes id='i22xc'>

                        • <tfoot id='i22xc'></tfoot>
                          • 主站蜘蛛池模板: 在线欧美亚洲 | www国产成人免费观看视频,深夜成人网 | 日韩午夜电影在线观看 | 久久久久网站 | 亚洲精品中文在线 | 亚洲精品欧美精品 | 一区二区三区视频在线观看 | 国产精品久久久亚洲 | 视频一区二区在线观看 | 中文字幕日韩一区 | 国产精品激情在线 | 97人人超碰| 日本91av视频 | 国产精品中文字幕在线 | 精品一区二区三区四区五区 | 久久久久成人精品 | 亚洲国产精品一区二区三区 | 欧美在线色视频 | 成人国产精品久久久 | 久久成人久久 | 日韩美女在线看免费观看 | 中文字幕视频三区 | av免费电影在线 | 国户精品久久久久久久久久久不卡 | 亚洲国产欧美日韩 | 91偷拍精品一区二区三区 | av一级久久 | 欧美日本韩国一区二区 | 日韩在线视频网址 | 国产精品永久 | 亚洲欧洲综合av | 99久久婷婷国产综合精品电影 | 青青草原综合久久大伊人精品 | 成人免费网视频 | 日韩在线一区二区 | www.精品国产 | 国产一区二区精 | 日本高清不卡视频 | 国产精品国产a级 | 久久国产精品99久久久久久丝袜 | 欧美性极品xxxx做受 |