Sample application in nodejs for learning Docker and docker-compose.
docker build -t russmedia/sample-nodejs-app:0.0.1 .
docker-compose up --build
- Change container user
- run
docker build -t russmedia/sample-nodejs-app:0.0.1 .
docker-compose up -d # run container
docker ps # check what containers are running
docker exec -it sample-nodejs-app_app_1 whoami # check what user is container run as
- add line to Dockerfile (before
EXPOSE 3000):
RUN adduser --disabled-password russmedia
USER russmedia
- run
docker build -t russmedia/sample-nodejs-app:0.0.1 .
docker-compose up -d # run container
docker exec -it sample-nodejs-app_app_1 whoami # check what user is container run as
- Pass arguments to build and use them as envs
- add line to Dockerfile (after
FROM node:10-alpine):
ARG user=missing_user
ENV USER_NAME=$user
- run
docker build -t russmedia/sample-nodejs-app:0.0.1 --build-arg user=towa .
docker-compose up -d # run container
docker exec -it sample-nodejs-app_app_1 env | grep USER
- run
docker build -t russmedia/sample-nodejs-app:0.0.1-multistage -f Dockerfile-multistage .
- change in docker-compose.yaml image to
russmedia/sample-nodejs-app:0.0.1-multistageand run:
docker-compose up