depthmetrics_client v1.0.10
DockerNodeUtility
This is a utility docker container for all the node projects.
The container utility purpose is to initialise new npm projects without having to install npm in the system. You should only have to run the DockerNodeUtility only on initializing the project, thereafter you can run simple commands to run the docker container.
Initialization of the npm package
You will only have to run this only once. Just run the docker instructions below
docker-compose run --rm npm init
Install modules
docker-compose run --rm npm install <module>
After installation
- Keep the bind mounts
- Add
CMD
to convert the installation into a normal docker container.
Setting permissions
Docker defaults to root for creating volumes, the best way to tensure that volumes get created with the right user, the following lines are added on the compose file
user: "1000:1000"
To get the correct User ID and group ID, type the following on the terminal.
id
this will create an output as follows
uid={...}(xxx) gid={...}(xxx) ...
Take note of the uid and gid, then edit the compose.yaml file with the uid and gid, example user: "uid:gid"
Still getting a problem with permissions
Not neat solution, run chown 1000:1000 path/to/volume
to set permissions.
Connecting to mongodb
For mongodb connection url, instead of using localhost
, the correct name is now the name of the image,
for the mondb image, this will be mongodb
Starting error (network)
Cannot start service: network not found https://stackoverflow.com/questions/53347289/docker-error-cannot-start-service-network-7808732465bd529e6f20e4071115218b