小编nin*_*dev的帖子

Docker 堆栈部署滚动更新卷问题

我正在为生产 PHP-FPM/Nginx 应用程序运行 docker,我想使用 docker-stack.yml 并部署到 swarm 集群。这是我的文件:

version: "3"
services:

app:
  image: <MYREGISTRY>/app
volumes:
   - app-data:/var/www/app
deploy:
  mode: global

php:
  image: <MYREGISTRY>/php
volumes:
   - app-data:/var/www/app
deploy:
  replicas: 2

nginx:
  image: <MYREGISTRY>/nginx
    depends_on:
      - php
  volumes:
    - app-data:/var/www/app
  deploy:
    replicas: 2
  ports:
    - "80:80"

volumes:
 app-data:
Run Code Online (Sandbox Code Playgroud)

我的代码位于app带有来自我的注册表的图像的容器中。

我想更新我的代码,docker service update --image <MYREGISTRY>/app:latest但它不起作用代码没有改变。我猜它使用本地卷app-data代替。

新容器数据不覆盖卷数据是否正常?

docker docker-registry docker-compose docker-swarm

6
推荐指数
1
解决办法
1734
查看次数

将 docker-compose 环境传递给 symfony 配置

我想将配置参数从 docker-compose 文件传递​​到我的 Symfony 应用程序,我试过这个:

app:
    image: <NGINX + PHP-FPM IMAGE>
    environment:
        DATABASE_HOST: db
Run Code Online (Sandbox Code Playgroud)

我的 parameters.yml 文件:

database_host: "%env(DATABASE_HOST)%"
Run Code Online (Sandbox Code Playgroud)

我收到错误 500“找不到环境变量:DATABASE_HOST”

我也在 docker-compose 中尝试了 SYMFONY__DATABASE_HOST 但也没有工作。

它是如何工作的?

environment-variables symfony docker

5
推荐指数
1
解决办法
2291
查看次数

Trafik Docker Swarm模式真正IP背后的Nginx

我正在使用Traefik作为docker swarm环境上nginx服务之前的反向代理。这是我的docker-stack.yml:

traefik:
    image: traefik
    command: -c /dev/null --web --docker --docker.swarmmode --docker.watch --docker.domain=domain --logLevel=DEBUG
    ports:
      - "8080:8080"
      - "80:80"
      - "443:443"
    networks:
       - app
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    deploy:
      placement:
        constraints: [node.role == manager]

nginx:
    image: nginx
    networks:
      - app
    deploy:
      labels:
        traefik.port: 80
        traefik.docker.network: app
        traefik.frontend.rule: "Host:app.domain"
Run Code Online (Sandbox Code Playgroud)

一切正常,但是我需要在Nginx访问日志中使用真实的客户端IP,相反,我得到的信息类似于10.0.1.37

如何获得真实的客户IP?

谢谢,

nginx docker docker-swarm traefik docker-swarm-mode

5
推荐指数
1
解决办法
3963
查看次数