在構築Open project的過程中,遇到了無法建立目錄的問題,這讓我很煩惱

情况

在使用Docker构建Open project时,阅读此文章的过程中,出现了以下错误。

[root@centos openproject]# docker-compose up 
Creating openproject_postgres_1  ... done
Creating openproject_memcached_1 ... done
Creating openproject_web_1       ... done
Attaching to openproject_postgres_1, openproject_memcached_1, openproject_web_1
postgres_1   | LOG:  database system was shut down at 2019-09-02 23:27:01 UTC
postgres_1   | LOG:  MultiXact member wraparound protections are now enabled
postgres_1   | LOG:  database system is ready to accept connections
postgres_1   | LOG:  autovacuum launcher started
web_1        | WARN: You are using a legacy volume path for your openproject data. You should mount your openproject volume at /var/openproject/assets instead of /var/db/openproject.
web_1        | INFO: /var/openproject/assets is empty, so /var/openproject/assets will be symlinked to /var/db/openproject as a temporary measure.
web_1        | mkdir: cannot create directory '/var/db/openproject/files': Permission denied
web_1        | mkdir: cannot create directory '/var/db/openproject/git': Permission denied
web_1        | mkdir: cannot create directory '/var/db/openproject/svn': Permission denied
openproject_web_1 exited with code 1

引起结果的事情或情况。

web_1        | WARN: You are using a legacy volume path for your openproject data. You should mount your openproject volume at /var/openproject/assets instead of /var/db/openproject.

正如所述,我会进行修正,因为它说“由于卷路径过时,请指定/var/openproject/assets”。

解决方案

调整网络音量。

version: '3'

services:
  web:
    image: openproject/community:latest
    depends_on:
      - postgres
      - memcached
    ports:
      - "30080:80"
    volumes:
      - pg-data:/var/lib/postgresql/data 
#      - ./data:/var/db/openproject
      - ./data:/var/openproject/assets
    environment:
      DATABASE_URL: "postgres://opuser:oppassword@postgres:5432/openproject?pool=10&encoding=unicode&timeout=5000&reconnect=true"
      SECRET_KEY_BASE: openproject_secret_key
      CACHE_MEMCACHE_SERVER: memcached
      CACHE_NAMESPACE: openproject
  postgres:
    image: postgres:9.6-alpine
    volumes:
      - pg-data:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: openproject
      POSTGRES_USER: opuser
      POSTGRES_PASSWORD: oppassword
  memcached:
    image: memcached:1.5.7-alpine
volumes:
  pg-data:

只需要执行 docker-compose up。