Wordpress Docker编写磁盘空间正在膨胀

hivapdat  于 2022-12-11  发布在  WordPress
关注(0)|答案(2)|浏览(167)

我有一个WordPress项目运行与docker-compose。我托管的项目在Digitalocean和有一个问题的空间。客户端认识到他不能上传新的图像后几天/几周。我执行docker system prune --all,并能够清除一些空间和上传新的媒体。但过了一段时间,磁盘空间又满了。/var/lib/docker/overlay2是像25 GB。这是什么&如何解决此问题?
更新1:docker system prune --all现在给我Total reclaimed space: 0B
更新2:我可以上传一些媒体,并在执行以下命令后再次更改页面内容。问题仍然是这个修复只持续了几个小时,几个小时后什么都不能再更改了。

docker kill $(docker ps -q)
docker system prune
sudo service apache2 stop
docker-compose up -d

更新3:我稍微调查了一下,在/var/lib/docker/containers/ID/HASH-json.log中发现了一个17 GB的日志文件
如何限制此文件大小?
服务器上的空间:

下面是我的docker-compose.yml的外观:

services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: xx
      MYSQL_DATABASE: xx
      MYSQL_USER: xx
      MYSQL_PASSWORD: xx

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      - wordpress_data:/var/www/html
      - ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
      - ./my_theme:/var/www/html/wp-content/themes/my_theme
    ports:
      - "80:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: xx
      WORDPRESS_DB_PASSWORD: xx
      WORDPRESS_DB_NAME: xx

  phpmyadmin:
    image: corbinu/docker-phpmyadmin
    links:
      - db:mysql
    ports:
      - 8181:80
    environment:
      MYSQL_USERNAME: xx
      MYSQL_ROOT_PASSWORD: xx
      MYSQL_PORT_3306_TCP_ADDR: db
volumes:
  db_data: {}
  wordpress_data: {}```
yhqotfr8

yhqotfr81#

托管docker容器的/dev/vda1也已满,因此您的覆盖层无法增长。
我建议您:
1.挂载外部磁盘/分区作为数据存储。
1.创建卷、数据和数据库,作为上述存储的绑定。

px9o7tmv

px9o7tmv2#

我通过设置日志文件的最大大小限制修复了这个问题。

version: "3.9"

services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    logging:
        driver: "json-file"
        options:
          max-size: "10m"
          max-file: "5"
    environment:
      MYSQL_ROOT_PASSWORD: xx
      MYSQL_DATABASE: xx
      MYSQL_USER: xx
      MYSQL_PASSWORD: xx

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      - wordpress_data:/var/www/html
      - ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
      - ./xxx:/var/www/html/wp-content/themes/xx
    ports:
      - "80:80"
    restart: always
    logging:
        driver: "json-file"
        options:
          max-size: "10m"
          max-file: "5"
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: xx
      WORDPRESS_DB_PASSWORD: xx
      WORDPRESS_DB_NAME: xx

  phpmyadmin:
    image: corbinu/docker-phpmyadmin
    links:
      - db:mysql
    ports:
      - 8181:80
    environment:
      MYSQL_USERNAME: xxx
      MYSQL_ROOT_PASSWORD: xxx
      MYSQL_PORT_3306_TCP_ADDR: db
volumes:
  db_data: {}
  wordpress_data: {}

相关问题