hjaltiatlason

Docker Notes

Dec 28th, 2020 (edited)
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 5.34 KB | None | 0 0
  1.  
  2.  
  3. ####Docker Process Management####
  4.  
  5. # Show all running docker containers
  6. docker ps
  7.  
  8. # Show all docker containers
  9. docker ps -a
  10.  
  11. # Run a container
  12. docker run <image>:<tag>
  13.  
  14. # Run a container and connect to it
  15. docker run -it <image>:<tag>
  16.  
  17. # Run a container in the background
  18. docker run -d <image>:<tag>
  19.  
  20. # Stop a container
  21. docker stop <container>
  22.  
  23. # Kill a container
  24. docker kill <container>
  25.  
  26. ####Docker Images and Repositories####
  27. # List available local images
  28. docker images
  29.  
  30. # Search for docker images
  31. docker search <image>
  32.  
  33. # Pull a docker image
  34. docker pull <image>
  35.  
  36. # Build an image with a dockerfile
  37. docker build -t <image>:<tag> <run_directory> -f <dockerfile>
  38.  
  39. # Login to a remote repository
  40. docker login <repository>
  41.  
  42. # Push an image to your remotee repository
  43. docker push <image>:<tag>
  44.  
  45. # Remove a local docker image
  46. docker rmi <image>:<tag>
  47.  
  48. # Show metadata for an image
  49. docker inspect <image>
  50.  
  51. # Remove all unused docker images
  52. docker image prune
  53.  
  54. # List volumes
  55. docker volume ls
  56.  
  57. # Create a volume
  58. docker volume create <volume>
  59.  
  60. # Delete a volume
  61. docker volume rm <volume>
  62.  
  63. # Show volume metadata
  64. docker volume inspect <volume>
  65.  
  66. # Delete all volumes not attached to a container
  67. docker volume prune
  68.  
  69. # Mount a local directory to your container
  70. docker run -v <local_dir>:<container_dir> <image>
  71.  
  72. # Copy file or folder from a docker container to host machine
  73. docker cp <container>:<container_dir> <local_dir>
  74.  
  75. # Copy file or folder from local machine onto a container
  76. docker cp <local_dir> <container>:<container_dir>
  77.  
  78. # Map a local port to a docker instance
  79. docker run -d -p 127.0.0.1:<local_port>:<docker_port> <image>
  80.  
  81. # List the ports a docker container is running on
  82. docker port <container>
  83.  
  84.  
  85. ####Docker Troubleshooting####
  86. # Show the logs of a container
  87. docker logs <container>
  88.  
  89. # Follow/tail the logs of a container
  90. docker logs -f <container>
  91.  
  92. # Show timestamps on docker logs
  93. docker logs -t <container>
  94.  
  95. # Show details/metadata of a container
  96. docker inspect <container>
  97.  
  98. # Show a 'top' view of processes running on a container
  99. docker top <container>
  100.  
  101. # Show a 'top' view of all docker containers
  102. docker stats
  103.  
  104. # Show any files that have changed since startup
  105. docker diff <container>
  106.  
  107. # Connect to an already running container
  108. docker attach <container>
  109.  
  110. # Execute a command on a container
  111. docker exec -it <container_id> /bin/bash
  112.  
  113. # Show docker system wide information
  114. docker system info
  115.  
  116. # Show docker disk space used
  117. docker system df
  118.  
  119.  
  120. ####Docker Compose####
  121. # Start your docker-compose defined resources in detached mode
  122. docker-compose up -d -f <docker_compose_yaml>
  123.  
  124. # Stop all docker-compose resources
  125. docker-compose stop
  126.  
  127. # Destroy all docker-compose resources
  128. docker-compose down
  129.  
  130. # Show docker-compose processes
  131. docker-compose ps
  132.  
  133. # Show docker-compose logs
  134. docker-compose logs
  135.  
  136. # Show docker-compose resource consumption
  137. docker-compose top
  138.  
  139.  
  140. ####Personal Notes from Warp9 #####
  141.  
  142. #Build image from dockerfile
  143. docker build . -t myfirstimage:1
  144. #Run the build image
  145. docker run myfirstimage:1
  146.  
  147. # run container myweb:1 with port 8080:80 open (in attached mode)
  148. docker run -p 8080:80 myweb:1
  149.  
  150. #Copy VS ADD in Dockerfile:
  151. #Copy copies local files into image
  152. # Add can copy source from remote url (not reccomended instead use curl) and also it can decompress .tar file into image
  153.  
  154. # RUN vs CMD vs ENTRYPOINT
  155. #RUN: executes when building the image (for example echo , curl ,dependancies )
  156. # CMD and ENTRYPOINT : execute when the container starts
  157. #Blog post that goes into details on the differences between RUN, CMD and ENTRYPOINT: https://aboullaite.me/dockerfile-run-vs-cmd-vs-entrypoint/
  158.  
  159. # Runs myweb image on random port
  160. docker run -d -P myweb:4
  161.  
  162.  
  163. #Docker Documentation for Building Images: https://docs.docker.com/engine/reference/commandline/build/#specify-a-dockerfile--f
  164. # build a docker image with custom dockerfile name
  165. docker build -f Dockerfile.prod . -t custom:1
  166. #Build with URL and tag with custom image name
  167. docker build https://github.com/linuxserver/docker-dokuwiki.git -t mydokuwiki-img:1
  168.  
  169. #Prune docker system and remove all containers, images, volumes with one command.
  170. docker system prune
  171. docker container stop $(docker container ls -aq)
  172. docker container rm $(docker container ls -aq)
  173. docker rmi $(docker images -aq)
  174. docker volume prune
  175.  
  176.  
  177. #run container in detached mode and name the container
  178. docker container run -d -p 8080:80 --name=mywebserv httpd:2.4
  179.  
  180.  
  181. #Docker Documentation for Volume Mounts: https://docs.docker.com/storage/bind-mounts/#choose-the--v-or---mount-flag
  182. #run container with volume mount inside apache webserver container
  183. docker container run -p 8080:80 -v /mnt/d/Docker-code/website:/usr/local/apache2/htdocs httpd:2.4
  184.  
  185. #Rename a image myweb:1 to mywebserver:latest
  186. docker tag myweb:1 mywebserver:latest
  187.  
  188. connect to container via Bash
  189. docker container exec -it a85613688203 /bin/bash
  190.  
  191.  
  192. #Get information about the image
  193. docker image inspect
  194.  
  195. #Make image smaller
  196. docker export 013fc6638345 > ./export.tar
  197. cat export.tar| docker import - layers:3
  198.  
  199.  
  200.  
  201. #GitHub Respository for the Docker Multistage Image Example: https://github.com/katherinelim/docker-multistage-example
  202. #Here's a link to the Docker documentation for multistage images: https://docs.docker.com/develop/develop-images/multistage-build/
  203.  
  204.  
  205.  
  206.  
Add Comment
Please, Sign In to add comment