在構築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。