https://docs.docker.com/install/linux/docker-ce/ubuntu Docker is a platform for developers and sysadmins to develop, deploy, and run applications with containers.
docker --version
docker version
docker info
docker run hello-world
/ docker container run hello-world
docker image ls
docker image pull [IMAGE]
docker image rm [IMAGE]
Show all docker container whether running or not and show its process (running, all, all in quiet mode)
docker container ls
docker container ls --all
docker container create --name [NAME] [IMAGE:TAG]
docker container start [NAME/ID]
docker container stop [NAME/ID]
docker container rm [NAME/ID]
docker container prune
Dockerfile is a docker configuration that define the image and commands find image repository in https://hub.docker.com, create file by https://docs.docker.com/get-started/part2/#dockerfile
docker image pull [YOUR_REPO_NAME]
docker image build -t [YOUR_REPO_NAME] .
docker image build --tag=friendlyhello:v1.2 .
docker commit -c 'CMD ["redis-server"]' [CONTAINER ID]
docker container create [YOUR_REPO_NAME]
docker container start -a [YOUR_REPO_NAME]
docker container run -it [YOUR_REPO_NAME]
docker container run [YOUR_REPO_NAME] [COMMAND]
docker container run -it -d --rm [YOUR_REPO_NAME]
docker exec -it [CONTAINER_ID] bash
docker run -it -p [PORT_HOST]:[PORT_CONTAINER] -n [CUSTOM_NAME] [CONTAINER_NAME]
docker container run -it -p [PORT_HOST]:[PORT_CONTAINER] -v [PATH_HOST]:[PATH_CONTAINER] [CONTAINER_NAME]
docker container run -d --name simple-nginx -p 8080:80 -v $(pwd):/usr/share/nginx/html nginx
Run docker and bookmark path inside container (don't override by mounted volume outside the container)
docker container run -v app/node_modules -v $(pwd):/usr/app
docker stop [CONTAINER_ID]
docker logs [CONTAINER_ID]
docker-compose --version
docker-compose up
docker-compose down
docker-compose down --rmi local
docker-compose up --build
docker swarm init
docker stack ls
docker stack deploy -c <composefile> <appname>
docker service ls
docker service ps <service>
docker inspect <task or container>
docker container ls -q
docker stack rm <appname>
docker swarm leave --force
docker-machine create --driver virtualbox myvm1
docker-machine env myvm1
docker-machine ssh myvm1 "docker node ls"
docker-machine ssh myvm1 "docker node inspect <node ID>"
docker-machine ssh myvm1 "docker swarm join-token -q worker"
docker-machine ssh myvm1
docker node ls
docker-machine ssh myvm2 "docker swarm leave"
docker-machine ssh myvm1 "docker swarm leave -f"
docker-machine ls
docker-machine start myvm1
docker-machine env myvm1
eval $(docker-machine env myvm1)
docker stack deploy -c <file> <app>
Copy file to node's home dir (only required if you use ssh to connect to manager and deploy the app)
docker-machine scp docker-compose.yml myvm1:~
docker-machine ssh myvm1 "docker stack deploy -c <file> <app>"
eval $(docker-machine env -u)
docker-machine stop $(docker-machine ls -q)
docker-machine rm $(docker-machine ls -q)
docker login
docker tag <image> username/repository:tag
docker push username/repository:tag
docker run username/repository:tag
docker image prune
docker rmi $(docker images -f "dangling=true" -q)