Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installation instructions did not work in docker container #24

Closed
johnbarney opened this issue Oct 13, 2017 · 1 comment
Closed

Installation instructions did not work in docker container #24

johnbarney opened this issue Oct 13, 2017 · 1 comment

Comments

@johnbarney
Copy link

Example of my Dockerfile:

FROM ghost:alpine

RUN cd current;                                   \
    npm install ghost-storage-adapter-s3;         \
    mkdir -p ./content/adapters/storage;          \
    cp -r ./node_modules/ghost-storage-adapter-s3 \
          ./content/adapters/storage/s3;          \
    rm -f /var/lib/ghost/content/data/ghost.db;   \
    rm -f /var/lib/ghost/configuration.production.json

ENV server__host 0.0.0.0

This Dockerfile works as long as I do not try to activate the s3 storage module.

Stacktrace when I do invoke the s3 storage module:

NAME: IncorrectUsageError
CODE: MODULE_NOT_FOUND
MESSAGE: We detected a misuse. Please read the stack trace.

level:critical

We cannot find your adapter in: /var/lib/ghost/content/adapters/storage/ or: /var/lib/ghost/versions/1.12.1/core/server/adapters/stor
age/
IncorrectUsageError: We detected a misuse. Please read the stack trace.
    at new IncorrectUsageError (/var/lib/ghost/versions/1.12.1/node_modules/ghost-ignition/lib/errors/index.js:79:23)
    at Object.getStorage (/var/lib/ghost/versions/1.12.1/core/server/adapters/storage/index.js:62:19)
    at setupBlogApp (/var/lib/ghost/versions/1.12.1/core/server/blog/app.js:64:66)
    at setupParentApp (/var/lib/ghost/versions/1.12.1/core/server/app.js:54:36)
    at /var/lib/ghost/versions/1.12.1/core/server/index.js:70:37

    at tryCatcher (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromise0 (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:693:18)
    at Promise._fulfill (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:638:18)
    at PromiseArray._resolve (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise_array.js:126:19)
    at PromiseArray._promiseFulfilled (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise_array.js:144:14)
    at Promise._settlePromise (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:574:26)
    at Promise._settlePromise0 (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:693:18)
    at Async._drainQueue (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/async.js:133:16)
    at Async._drainQueues (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:672:20)
    at tryOnImmediate (timers.js:645:5)
    at processImmediate [as _immediateCallback] (timers.js:617:5)

Error: Cannot find module '/var/lib/ghost/versions/1.12.1/core/server/adapters/storage/s3'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.getStorage (/var/lib/ghost/versions/1.12.1/core/server/adapters/storage/index.js:59:42)
    at setupBlogApp (/var/lib/ghost/versions/1.12.1/core/server/blog/app.js:64:66)
    at setupParentApp (/var/lib/ghost/versions/1.12.1/core/server/app.js:54:36)

    at /var/lib/ghost/versions/1.12.1/core/server/index.js:70:37
    at tryCatcher (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromise0 (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:693:18)
    at Promise._fulfill (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:638:18)
    at PromiseArray._resolve (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise_array.js:126:19)
    at PromiseArray._promiseFulfilled (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise_array.js:144:14)
    at Promise._settlePromise (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:574:26)
    at Promise._settlePromise0 (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/promise.js:693:18)
    at Async._drainQueue (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/async.js:133:16)
    at Async._drainQueues (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/var/lib/ghost/versions/1.12.1/node_modules/bluebird/js/release/async.js:17:14)

Example Dockerfile that I created that works using S3 storage adapter:

FROM ghost:alpine

RUN cd current;                                   \
    npm install ghost-storage-adapter-s3;         \
    mkdir -p ./content/adapters/storage;          \
    cp -r ./node_modules/ghost-storage-adapter-s3 \
          ./core/server/adapters/storage/s3;          \
    rm -f /var/lib/ghost/content/data/ghost.db;   \
    rm -f /var/lib/ghost/configuration.production.json

ENV server__host 0.0.0.0

I'm positive this is something I am doing wrong so I'd like to get some feedback. I'm not blocked as I got it working.

Thanks

@johnbarney
Copy link
Author

It was indeed an issue on my end. The Docker container does some interesting things with the content folder. Using my workaround seems to be the only sane thing to do for the moment. Closing thread.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant