Docker 卷停止同步

标签 docker synchronization volume

我有一个基于 docker 的系统,它包含三个容器:

1. The official PHP container, modified with some additional pear libs 

2. mysql:5.7

3: alterrebe/postfix-relay (a postfix container) 

官方 php 容器有一个卷链接到主机系统的代码存储库,理论上它应该允许我像在“本地”托管一样处理这个应用程序。

但是,每次系统启动时,我都必须运行
      docker-compose stop && docker-compose up -d 

为了查看我刚刚对系统所做的更改。我可能没有正确理解 Docker,这是设计使然,但是在每次代码更改后停止和启动容器会大大减慢开发速度。谁能告诉我我做错了什么(如果有的话)?提前致谢。

我的 docker-compose.yml 在下面(当然有变量和不隐藏的)
web:
  build: .
  links:
   - mysql
   - mailrelay
  environment:
   - HIDDEN_VAR=placeholder
   - ABC_ENV=development
  volumes:
  - ./html/:/var/www/html/
  ports:
  - "0.0.0.0:80:80"
mysql:
  image: mysql:5.7
  environment:
   - MYSQL_ROOT_PASSWORD=abcdefg
   - MYSQL_DATABASE=thedatabase
  volumes:
   - .:/db/:ro
mailrelay:
  hostname: mailrelay
  image: alterrebe/postfix-relay
  ports:
    - "25:25"
  environment:
    - EXT_RELAY_HOST=relay.relay.com
    - EXT_RELAY_PORT=25
    - SMTP_LOGIN=CLASSIFIED
    - SMTP_PASSWORD=ABCDEFGHIK
    - ACCEPTED_NETWORKS=172.0.0.0/8

最佳答案

最终我才开始运行

docker stop {{ container name }} && docker start {{ container name }} 

每次而不是 docker-compose。直接使用 Docker 而不是 docker-compose 非常快(< 1 秒而不是超过一分钟),所以它不再是一个大问题

关于Docker 卷停止同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33766517/

相关文章:

docker - 运行 Jenkins Pipeline Slave 时如何升级 docker 服务器版本

iphone - iOS 将核心数据保存到服务器/云端

java - 线程的意外行为

java - 我需要同步这个吗?如果可以的话,该怎么办呢?

c++ - CPU 光线转换

docker-machine:找不到命令

python - 尝试在Docker容器中创建 session 时,Tensorflow卡住

c# - 更改主音量级别

c# - 使用 C# 使 Windows 音量静音

php - docker + nginx + node.js + php-fpm