Note: different from meteorhacks/meteord, this package looks for a nested app, at /app
There are two main ways you can use Docker with Meteor apps. They are:
MeteorD supports these two ways. Let's see how to use MeteorD
With this method, your app will be converted into a Docker image. Then you can simply run that image.
For that, you can use meteorhacks/meteord as your base image. Magically, that's only you've to do. Here's how to do it.
Add following Dockerfile into the root of your app:
FROM meteorhacks/meteord
MAINTAINER Your Name
Then you can build the docker image with:
docker build -t yourname/app .
Then you can run your meteor image with
docker run -d \
-e ROOT_URL=http://yourapp.com \
-e MONGO_URL=mongodb://url \
-e MONGO_OPLOG_URL=mongodb://oplog_url \
-p 8080:80 \
yourname/app
Then you can access your app from the port 8080 of the host system.
For this you can directly use the MeteorD to run your meteor bundle. MeteorD can accept your bundle either from a local mount or from the web. Let's see:
docker run -d \
-e ROOT_URL=http://yourapp.com \
-e MONGO_URL=mongodb://url \
-e MONGO_OPLOG_URL=mongodb://oplog_url \
-v /mybundle_dir:/bundle \
-p 8080:80 \
meteorhacks/meteord
With this method, MeteorD looks for the tarball version of the meteor bundle. So, you should build the meteor bundle for os.linux.x86_64 and put it inside the /bundle volume. This is how you can build a meteor bundle.
meteor build --architecture=os.linux.x86_64 ./
You can also simply give URL of the tarball with BUNDLE_URL environment variable. Then MeteorD will fetch the bundle and run it. This is how to do it:
docker run -d \
-e ROOT_URL=http://yourapp.com \
-e MONGO_URL=mongodb://url \
-e MONGO_OPLOG_URL=mongodb://oplog_url \
-e BUNDLE_URL=http://mybundle_url_at_s3.tar.gz \
-p 8080:80 \
meteorhacks/meteord
Sometimes, you need to rebuild binary npm modules. If so, expose REBULD_NPM_MODULES environment variable. It will take couple of seconds to complete the rebuilding process.
docker run -d \
-e ROOT_URL=http://yourapp.com \
-e MONGO_URL=mongodb://url \
-e MONGO_OPLOG_URL=mongodb://oplog_url \
-e BUNDLE_URL=http://mybundle_url_at_s3.tar.gz \
-e REBULD_NPM_MODULES=1 \
-p 80:3000 \
meteorhacks/meteord
Content type
Image
Digest
sha256:a21926c13…
Size
229.2 MB
Last updated
about 11 years ago
docker pull jhgaylor/meteord