Reaction: Error on app start [EACCES: permission denied resolver-result-cache.json]

Created on 12 Mar 2019  路  4Comments  路  Source: reactioncommerce/reaction

Prerequisites

  • [yes] Are you running the latest version?
  • [yes] Are you able to consistently reproduce the issue?
  • [yes] Did you search the issue queue for existing issue? Search issues

Issue Description

$ docker-compose logs -f
Attaching to reaction_reaction_1, reaction_mongo_1
reaction_1 | npm WARN [email protected] requires a peer of [email protected] || ^0.12.0 || ^0.13.0 but none is installed. You must install peer dependencies yourself.
reaction_1 | npm WARN [email protected] requires a peer of graphql@^0.11.0 || ^0.12.0 || ^0.13.0 but none is installed. You must install peer dependencies yourself.
reaction_1 | npm WARN [email protected] requires a peer of graphql@^0.11.3 || ^0.12.3 || ^0.13.0 but none is installed. You must install peer dependencies yourself.
reaction_1 | npm WARN [email protected] requires a peer of graphql@^0.11.0 || ^0.12.0 || ^0.13.0 but none is installed. You must install peer dependencies yourself.
reaction_1 | npm WARN [email protected] requires a peer of graphql@^0.11.0 || ^0.12.0 || ^0.13.0 but none is installed. You must install peer dependencies yourself.
reaction_1 | npm WARN [email protected] requires a peer of graphql@^0.5.0 || ^0.6.0 || ^0.7.0 || ^0.8.0-b || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 but none is installed. You must install peer dependencies yourself.
reaction_1 | npm WARN [email protected] requires a peer of graphql@^0.5.0 || ^0.6.0 || ^0.7.0 || ^0.8.0-b || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 but none is installed. You must install peer dependencies yourself.
reaction_1 | npm WARN [email protected] requires a peer of graphql@^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 but none is installed. You must install peer dependencies yourself.
reaction_1 | npm WARN [email protected] requires a peer of react-dom@^15.4.2 but none is installed. You must install peer dependencies yourself.
reaction_1 | npm WARN [email protected] requires a peer of react@^15.3 but none is installed. You must install peer dependencies yourself.
reaction_1 | npm WARN [email protected] requires a peer of react-dom@^15.3 but none is installed. You must install peer dependencies yourself.
reaction_1 | npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents):
reaction_1 | npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
reaction_1 |
reaction_1 | up to date in 18.884s
reaction_1 |
reaction_1 | real 0m29.833s
reaction_1 | user 0m18.796s
reaction_1 | sys 0m2.380s
reaction_1 | MongoDB replica set initialized and ready.
reaction_1 | (node:53) ExperimentalWarning: The ESM module loader is experimental.
reaction_1 | Setting up plugin imports...
reaction_1 |
reaction_1 | Setting up plugin imports took 0s 13.485635ms
reaction_1 |
reaction_1 | Setting up style imports...
reaction_1 |
reaction_1 | Setting up style imports took 0s 5.475854ms
reaction_1 |
reaction_1 | Provisioning assets...
reaction_1 |
reaction_1 | Provisioning assets took 0s 10.009487ms
reaction_1 |
reaction_1 | Running command: meteor run --no-lint --no-release-check --raw-logs
reaction_1 | /home/node/.meteor/packages/meteor-tool/.1.8.0_2.1om3lwx.sy8++os.linux.x86_64+web.browser+web.browser.legacy+web.cordova/mt-os.linux.x86_64/dev_bundle/lib/node_modules/meteor-promise/promise_server.js:218
reaction_1 | throw error;
reaction_1 | ^
reaction_1 |
reaction_1 | Error: EACCES: permission denied, open '/opt/reaction/src/.meteor/local/.resolver-result-cache.json.1b3w6n3.97djl'
reaction_1 | at Object.fs.openSync (fs.js:646:18)
reaction_1 | at Object.fs.writeFileSync (fs.js:1299:33)
reaction_1 | at Object.wrapper [as writeFile] (/tools/fs/files.js:1609:35)
reaction_1 | at Object.writeFileAtomically (/tools/fs/files.js:1071:11)
reaction_1 | at ProjectContext._saveResolverResultCache (/tools/project-context.js:619:11)
reaction_1 | at /tools/project-context.js:594:14
reaction_1 | at Object.enterJob (/tools/utils/buildmessage.js:388:12)
reaction_1 | at /tools/project-context.js:529:20
reaction_1 | at /tools/packaging/catalog/catalog.js:100:5
reaction_1 | at Object.capture (/tools/utils/buildmessage.js:283:5)
reaction_1 | at Object.catalog.runAndRetryWithRefreshIfHelpful (/tools/packaging/catalog/catalog.js:99:31)
reaction_1 | at ProjectContext._resolveConstraints (/tools/project-context.js:528:13)
reaction_1 | at /tools/project-context.js:300:9
reaction_1 | at Object.enterJob (/tools/utils/buildmessage.js:388:12)
reaction_1 | at ProjectContext._completeStagesThrough (/tools/project-context.js:290:18)
reaction_1 | at Profile.run (/tools/project-context.js:260:12)
reaction_1 | at Function.run (/tools/tool-env/profile.js:490:12)
reaction_1 | at ProjectContext.resolveConstraints (/tools/project-context.js:259:13)
reaction_1 | at /tools/runners/run-all.js:75:27
reaction_1 | at Object.capture (/tools/utils/buildmessage.js:283:5)
reaction_1 | at new Runner (/tools/runners/run-all.js:74:18)
reaction_1 | at Object.exports.run (/tools/runners/run-all.js:366:16)
reaction_1 | at Command.doRunCommand [as func] (/tools/cli/commands.js:417:17)
reaction_1 | at /tools/cli/main.js:1531:15
reaction_1 | { Error: Command failed: REACTION_METEOR_APP_COMMAND_START_TIME=1552359076768 meteor run --no-lint --no-release-check --raw-logs
reaction_1 | at checkExecSyncError (child_process.js:601:13)
reaction_1 | at Object.execSync (child_process.js:641:13)
reaction_1 | at run (file:///opt/reaction/src/.reaction/run/index.mjs:41:18)
reaction_1 | at file:///opt/reaction/src/.reaction/run/index.mjs:49:1
reaction_1 | at ModuleJob.run (internal/loader/ModuleJob.js:97:14)
reaction_1 | at
reaction_1 | error: null,
reaction_1 | cmd: 'REACTION_METEOR_APP_COMMAND_START_TIME=1552359076768 meteor run --no-lint --no-release-check --raw-logs ',
reaction_1 | file: '/bin/sh',
reaction_1 | args:
mongo_1 | 2019-03-12T02:50:28.649+0000 I CONTROL [initandlisten] MongoDB starting : pid=1 port=27017 dbpath=/data/db 64-bit host=d6a18ede11af
mongo_1 | 2019-03-12T02:50:28.659+0000 I CONTROL [initandlisten] db version v3.6.3
mongo_1 | 2019-03-12T02:50:28.660+0000 I CONTROL [initandlisten] git version: 9586e557d54ef70f9ca4b43c26892cd55257e1a5
mongo_1 | 2019-03-12T02:50:28.660+0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1t 3 May 2016
mongo_1 | 2019-03-12T02:50:28.660+0000 I CONTROL [initandlisten] allocator: tcmalloc
mongo_1 | 2019-03-12T02:50:28.660+0000 I CONTROL [initandlisten] modules: none
mongo_1 | 2019-03-12T02:50:28.660+0000 I CONTROL [initandlisten] build environment:
mongo_1 | 2019-03-12T02:50:28.660+0000 I CONTROL [initandlisten] distmod: debian81
mongo_1 | 2019-03-12T02:50:28.660+0000 I CONTROL [initandlisten] distarch: x86_64
mongo_1 | 2019-03-12T02:50:28.660+0000 I CONTROL [initandlisten] target_arch: x86_64
mongo_1 | 2019-03-12T02:50:28.660+0000 I CONTROL [initandlisten] options: { net: { bindIpAll: true }, replication: { oplogSizeMB: 128, replSet: "rs0" }, storage: { engine: "wiredTiger" } }
mongo_1 | 2019-03-12T02:50:28.660+0000 I STORAGE [initandlisten]
mongo_1 | 2019-03-12T02:50:28.660+0000 I STORAGE [initandlisten] * WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
reaction_1 | [ '/bin/sh',
reaction_1 | '-c',
reaction_1 | 'REACTION_METEOR_APP_COMMAND_START_TIME=1552359076768 meteor run --no-lint --no-release-check --raw-logs ' ],
reaction_1 | options:
reaction_1 | { stdio: [ [Object], [Object], [Object] ],
reaction_1 | shell: true,
reaction_1 | file: '/bin/sh',
reaction_1 | args:
reaction_1 | [ '/bin/sh',
reaction_1 | '-c',
reaction_1 | 'REACTION_METEOR_APP_COMMAND_START_TIME=1552359076768 meteor run --no-lint --no-release-check --raw-logs ' ],
reaction_1 | envPairs:
reaction_1 | [ 'TOOL_NODE_FLAGS=',
reaction_1 | 'NODE_VERSION=8.11.4',
reaction_1 | 'HOSTNAME=0d7802728c75',
reaction_1 | 'METEOR_WATCH_POLLING_INTERVAL_MS=10000',
reaction_1 | 'METEOR_VERSION=1.8.0.2',
reaction_1 | 'METEOR_DISABLE_OPTIMISTIC_CACHING=1',
mongo_1 | 2019-03-12T02:50:28.661+0000 I STORAGE [initandlisten] *
See http://dochub.mongodb.org/core/prodnotes-filesystem
reaction_1 | 'REACTION_EMAIL=admin@localhost',
reaction_1 | 'PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/node/.meteor:/home/node/.meteor:/opt/reaction/src/node_modules/.bin',
mongo_1 | 2019-03-12T02:50:28.661+0000 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=1460M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),statistics_log=(wait=0),verbose=(recovery_progress),
mongo_1 | 2019-03-12T02:50:42.277+0000 I CONTROL [initandlisten]
reaction_1 | 'PWD=/opt/reaction/src',
mongo_1 | 2019-03-12T02:50:42.277+0000 I CONTROL [initandlisten] * WARNING: Access control is not enabled for the database.
mongo_1 | 2019-03-12T02:50:42.277+0000 I CONTROL [initandlisten] *
Read and write access to data and configuration is unrestricted.
mongo_1 | 2019-03-12T02:50:42.277+0000 I CONTROL [initandlisten]
mongo_1 | 2019-03-12T02:50:42.699+0000 I STORAGE [initandlisten] createCollection: local.startup_log with no UUID.
reaction_1 | 'MONGO_URL=mongodb://mongo:27017/reaction',
mongo_1 | 2019-03-12T02:50:42.742+0000 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
reaction_1 | 'REACTION_USER=Admin',
mongo_1 | 2019-03-12T02:50:42.752+0000 I STORAGE [initandlisten] createCollection: local.me with no UUID.
mongo_1 | 2019-03-12T02:50:42.803+0000 I STORAGE [initandlisten] createCollection: local.replset.minvalid with no UUID.
reaction_1 | 'APP_BUNDLE_DIR=/opt/reaction/dist',
mongo_1 | 2019-03-12T02:50:42.920+0000 I REPL [initandlisten] Did not find local voted for document at startup.
mongo_1 | 2019-03-12T02:50:42.920+0000 I REPL [initandlisten] Did not find local Rollback ID document at startup. Creating one.
reaction_1 | 'ROOT_URL=http://localhost:3000',
mongo_1 | 2019-03-12T02:50:42.920+0000 I STORAGE [initandlisten] createCollection: local.system.rollback.id with no UUID.
mongo_1 | 2019-03-12T02:50:42.951+0000 I REPL [initandlisten] Initialized the rollback ID to 1
mongo_1 | 2019-03-12T02:50:42.951+0000 I REPL [initandlisten] Did not find local replica set configuration document at startup; NoMatchingDocument: Did not find replica set configuration document in local.system.replset
reaction_1 | 'HYDRA_TOKEN_URL=http://hydra:4444/oauth2/token',
mongo_1 | 2019-03-12T02:50:42.952+0000 I NETWORK [initandlisten] waiting for connections on port 27017
reaction_1 | 'SHLVL=1',
reaction_1 | 'HOME=/home/node',
mongo_1 | 2019-03-12T02:51:16.246+0000 I NETWORK [listener] connection accepted from 172.22.0.3:56376 #1 (1 connection now open)
reaction_1 | 'REACTION_AUTH=r3@cti0n',
reaction_1 | 'YARN_VERSION=1.6.0',
mongo_1 | 2019-03-12T02:51:16.259+0000 I NETWORK [conn1] received client metadata from 172.22.0.3:56376 conn: { driver: { name: "nodejs", version: "3.1.13" }, os: { type: "Linux", name: "linux", architecture: "x64", version: "4.15.0-46-generic" }, platform: "Node.js v8.11.4, LE, mongodb-core: 3.1.11" }
reaction_1 | 'OAUTH2_CLIENT_DOMAINS=http://localhost:4000',
reaction_1 | 'REACTION_DOCKER_BUILD=true',
mongo_1 | 2019-03-12T02:51:16.268+0000 I REPL [conn1] replSetInitiate admin command received from client
reaction_1 | 'REACTION_USER_NAME=admin',
mongo_1 | 2019-03-12T02:51:16.306+0000 I REPL [conn1] replSetInitiate config object with 1 members parses ok
reaction_1 | 'REACTION_SECURE_DEFAULT_ADMIN=false',
mongo_1 | 2019-03-12T02:51:16.317+0000 I REPL [conn1] *
reaction_1 | 'APP_SOURCE_DIR=/opt/reaction/src',
mongo_1 | 2019-03-12T02:51:16.317+0000 I REPL [conn1] creating replication oplog of size: 128MB...
reaction_1 | 'HYDRA_OAUTH2_INTROSPECT_URL=http://hydra:4445/oauth2/introspect',
mongo_1 | 2019-03-12T02:51:16.317+0000 I STORAGE [conn1] createCollection: local.oplog.rs with no UUID.
reaction_1 | 'MONGO_OPLOG_URL=mongodb://mongo:27017/local',
mongo_1 | 2019-03-12T02:51:16.346+0000 I STORAGE [conn1] Starting WiredTigerRecordStoreThread local.oplog.rs
mongo_1 | 2019-03-12T02:51:16.346+0000 I STORAGE [conn1] The size storer reports that the oplog contains 0 records totaling to 0 bytes
mongo_1 | 2019-03-12T02:51:16.346+0000 I STORAGE [conn1] Scanning the oplog to determine where to place markers for truncation
mongo_1 | 2019-03-12T02:51:16.443+0000 I REPL [conn1]
*
mongo_1 | 2019-03-12T02:51:16.444+0000 I STORAGE [conn1] createCollection: local.system.replset with no UUID.
mongo_1 | 2019-03-12T02:51:16.491+0000 I COMMAND [conn1] Assigning UUID 0f086b8a-ba2b-4052-a6b2-52728186e25f to collection local.system.rollback.id
mongo_1 | 2019-03-12T02:51:16.492+0000 I COMMAND [conn1] Assigning UUID 67e5a05a-e627-44a4-8293-9b43ed965f98 to collection local.system.replset
mongo_1 | 2019-03-12T02:51:16.492+0000 I COMMAND [conn1] Assigning UUID dcecf1f1-f726-433b-9ef2-86facba4e44b to collection local.me
mongo_1 | 2019-03-12T02:51:16.492+0000 I COMMAND [conn1] Assigning UUID 579c46b5-df51-4256-b749-1a27620ad8ee to collection local.startup_log
mongo_1 | 2019-03-12T02:51:16.492+0000 I COMMAND [conn1] Assigning UUID 3f4049b0-9a22-4f88-a576-4a3a07a44abd to collection local.replset.minvalid
mongo_1 | 2019-03-12T02:51:16.493+0000 I COMMAND [conn1] Assigning UUID 1d7f6d70-6737-4bd3-9a78-c971e303d9fe to collection local.oplog.rs
mongo_1 | 2019-03-12T02:51:16.493+0000 I STORAGE [conn1] createCollection: admin.system.version with provided UUID: a86ea0e4-074e-4e8c-93f6-1a616367c5d2
mongo_1 | 2019-03-12T02:51:16.535+0000 I COMMAND [conn1] setting featureCompatibilityVersion to 3.6
mongo_1 | 2019-03-12T02:51:16.535+0000 I NETWORK [conn1] Skip closing connection for connection # 1
reaction_1 | 'HYDRA_ADMIN_URL=http://hydra:4445',
reaction_1 | 'IDENTITY_PROVIDER_MODE=all',
reaction_1 | '_=/usr/local/bin/node' ],
reaction_1 | killSignal: undefined },
reaction_1 | envPairs:
reaction_1 | [ 'TOOL_NODE_FLAGS=',
reaction_1 | 'NODE_VERSION=8.11.4',
reaction_1 | 'HOSTNAME=0d7802728c75',
reaction_1 | 'METEOR_WATCH_POLLING_INTERVAL_MS=10000',
reaction_1 | 'METEOR_VERSION=1.8.0.2',
reaction_1 | 'METEOR_DISABLE_OPTIMISTIC_CACHING=1',
reaction_1 | 'REACTION_EMAIL=admin@localhost',
reaction_1 | 'PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/node/.meteor:/home/node/.meteor:/opt/reaction/src/node_modules/.bin',
reaction_1 | 'PWD=/opt/reaction/src',
reaction_1 | 'MONGO_URL=mongodb://mongo:27017/reaction',
reaction_1 | 'REACTION_USER=Admin',
reaction_1 | 'APP_BUNDLE_DIR=/opt/reaction/dist',
reaction_1 | 'ROOT_URL=http://localhost:3000',
reaction_1 | 'HYDRA_TOKEN_URL=http://hydra:4444/oauth2/token',
reaction_1 | 'SHLVL=1',
reaction_1 | 'HOME=/home/node',
reaction_1 | 'REACTION_AUTH=r3@cti0n',
reaction_1 | 'YARN_VERSION=1.6.0',
reaction_1 | 'OAUTH2_CLIENT_DOMAINS=http://localhost:4000',
reaction_1 | 'REACTION_DOCKER_BUILD=true',
reaction_1 | 'REACTION_USER_NAME=admin',
reaction_1 | 'REACTION_SECURE_DEFAULT_ADMIN=false',
reaction_1 | 'APP_SOURCE_DIR=/opt/reaction/src',
reaction_1 | 'HYDRA_OAUTH2_INTROSPECT_URL=http://hydra:4445/oauth2/introspect',
reaction_1 | 'MONGO_OPLOG_URL=mongodb://mongo:27017/local',
reaction_1 | 'HYDRA_ADMIN_URL=http://hydra:4445',
reaction_1 | 'IDENTITY_PROVIDER_MODE=all',
reaction_1 | '_=/usr/local/bin/node' ],
reaction_1 | stderr: null,
reaction_1 | stdout: null,
reaction_1 | pid: 63,
reaction_1 | output: [ null, null, null ],
reaction_1 | signal: null,
reaction_1 | status: 1 }
reaction_1 |
reaction_1 | Error: App failed to start

Steps to Reproduce

Please provide starting context, i.e. logged in as a user, configure a particular payment method.

  1. make
  2. make start
  3. cd reaction
  4. docker-compose logs -f

Versions

(run reaction -v from your reaction directory)

  • can't run reaction -v as reaction does not start
  • reaction commit hash: b7c6c207a431e511857f66beec64755a59bc4409

Most helpful comment

I also had this problem and I got it working after fix the folder permission:

docker start reaction-next-starterkit_web_1 && docker exec -it --user root reaction-next-starterkit_web_1 chown -R node:node /home/node
docker start reaction_reaction_1 && docker exec -it --user root reaction_reaction_1 chown -R node:node /opt/reaction/src/.meteor

All 4 comments

Have you tried this one? #5028

I also had this problem and I got it working after fix the folder permission:

docker start reaction-next-starterkit_web_1 && docker exec -it --user root reaction-next-starterkit_web_1 chown -R node:node /home/node
docker start reaction_reaction_1 && docker exec -it --user root reaction_reaction_1 chown -R node:node /opt/reaction/src/.meteor

We should be able to map .meteor to a Docker volume and keep it separate from the host filesystem, which should resolve this.

Should be resolved because .meteor/local isn't shared with the host filesystem anymore in the 3.0 Meteor projects.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

nnnnat picture nnnnat  路  4Comments

gsc-dev picture gsc-dev  路  5Comments

ticean picture ticean  路  4Comments

focusaurus picture focusaurus  路  4Comments

zikeji picture zikeji  路  4Comments