我是使用docker-compose
的新手,所以我不确定我是否使用正确的方法来构建代码更改。 docker-compose教程说,为了更新代码中的任何更改,只需进行更改并刷新链接,输出将被刷新(代码自行构建之后)。那不是我的事。我必须停止运行docker-compose,然后运行再次构建系统的命令docker-compose up --build
。现在,我的问题是它下载了python项目中的所有requirements
。目前,图书馆并不多,但它们会增加,在这一点上,一次又一次地下载所有内容将非常耗时。当我只更改代码而不是requirements.txt
文件时,我该怎么做才能避免这样做。
以下是我的设置示例:
搬运工-compose.yml
version: '2'
services:
web:
build: .
ports:
- "5000:5000"
env_file: .env
depends_on:
- db
volumes:
- ./webapp:/opt/webapp
db:
image: postgres:latest
ports:
- "5432:5432"
redis:
image: redis:alpine
ports:
- "6379:6379"
Dockerfile:
FROM python:3.4-alpine
ADD . /code
WORKDIR /code
RUN pip install -r requirements.txt
CMD ["python", "app.py"]
对于我在代码中进行的每项更改并对其进行测试,我必须完成所有这些步骤:
Building web
Step 1/5 : FROM python:3.4-alpine
---> 765c483d587c
Step 2/5 : ADD . /code
---> ce6f587fe477
Removing intermediate container bceef7c06a89
Step 3/5 : WORKDIR /code
---> cd3f4951f718
Removing intermediate container 5022780e47eb
Step 4/5 : RUN pip install -r requirements.txt
---> Running in 2dfe61c2537e
Collecting flask (from -r requirements.txt (line 1))
Downloading Flask-0.12-py2.py3-none-any.whl (82kB)
Collecting redis (from -r requirements.txt (line 2))
Downloading redis-2.10.5-py2.py3-none-any.whl (60kB)
Collecting itsdangerous>=0.21 (from flask->-r requirements.txt (line 1))
Downloading itsdangerous-0.24.tar.gz (46kB)
Collecting click>=2.0 (from flask->-r requirements.txt (line 1))
Downloading click-6.7-py2.py3-none-any.whl (71kB)
Collecting Werkzeug>=0.7 (from flask->-r requirements.txt (line 1))
Downloading Werkzeug-0.11.15-py2.py3-none-any.whl (307kB)
Collecting Jinja2>=2.4 (from flask->-r requirements.txt (line 1))
Downloading Jinja2-2.9.5-py2.py3-none-any.whl (340kB)
Collecting MarkupSafe>=0.23 (from Jinja2>=2.4->flask->-r requirements.txt (line 1))
Downloading MarkupSafe-0.23.tar.gz
Installing collected packages: itsdangerous, click, Werkzeug, MarkupSafe, Jinja2, flask, redis
Running setup.py install for itsdangerous: started
Running setup.py install for itsdangerous: finished with status 'done'
Running setup.py install for MarkupSafe: started
Running setup.py install for MarkupSafe: finished with status 'done'
Successfully installed Jinja2-2.9.5 MarkupSafe-0.23 Werkzeug-0.11.15 click-6.7 flask-0.12 itsdangerous-0.24 redis-2.10.5
---> 6adce98b4bd0
Removing intermediate container 2dfe61c2537e
Step 5/5 : CMD python app.py
---> Running in 554d0f0d4635
---> c28028d2c0de
Removing intermediate container 554d0f0d4635
Successfully built c28028d2c0de
Starting dockercompose_redis_1
Starting dockercompose_db_1
Recreating dockercompose_web_1
Attaching to dockercompose_db_1, dockercompose_redis_1, dockercompose_web_1
答案 0 :(得分:1)
我找到了答案here。
我不得不改变这些界限:
$('.carousel').each(function(i, el){
// el is the actual DOM element
// we save a jQuery wrapped version here in the closure so that
// it is available to callbacks.
var $el = $(el);
var hammertime = new Hammer(el, {
recognizers: [
[Hammer.Swipe, {direction: Hammer.DIRECTION_HORIZONTAL}]
],
cssProps: {
userSelect: "", contentZooming: ""
}
});
hammertime.on('swiperight', function () {
$el.find('.left.carousel-control').click();
});
hammertime.on('swipeleft', function () {
$el.find('.right.carousel-control').click();
});
});
到:
volumes:
- ./webapp:/opt/webapp
因为这个目录是我的Dockerfile中提到的目录。我也可以改变我的Dockerfile。