(1)docker pull : 获取image
(2)docker build : 创建image
例子:docker build -t hello_docker . 将目录下的文件打包成一个docker镜像。 -t 表示 tips 提示镜像名称 为hello_docker,最后的. 表示当前目录下的Dockerfile文件(不要指定后缀)
G:\docker\dockerfile>docker build -t hello-docker .Sending build context to Docker daemon 2.048kBStep 1/3 : FROM alpine:latestlatest: Pulling from library/alpineff3a5c916c92: Pull completeDigest: sha256:e1871801d30885a610511c867de0d6baca7ed4e6a2573d506bbec7fd3b03873fStatus: Downloaded newer image for alpine:latest ---> 3fd9065eaf02Step 2/3 : MAINTAINER linwl ---> Running in 109a655a481aRemoving intermediate container 109a655a481a ---> cdfcaae86e5eStep 3/3 : CMD echo ��hello docker�� ---> Running in 8107a89433deRemoving intermediate container 8107a89433de ---> 54075d7ab3faSuccessfully built 54075d7ab3faSuccessfully tagged hello-docker:latestSECURITY WARNING: You are building a Docker image from Windows against a non-Windows Docker host. All files and directories added to build context will have '-rwxr-xr-x' permissions. It is recommended to double check and reset permissions for sensitive files and directories.G:\docker\dockerfile>docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEhello-docker latest 54075d7ab3fa 5 seconds ago 4.15MBdocker-fun latest 0d3835780db9 About an hour ago 109MBubuntu latest 113a43faa138 8 days ago 81.2MBnginx latest cd5239a0906a 8 days ago 109MBalpine latest 3fd9065eaf02 5 months ago 4.15MBdocker4w/nsenter-dockerd latest cae870735e91 7 months ago 187kBG:\docker\dockerfile>
文件我这样写的:
FROM alpine:latestMAINTAINER linwlCMD echo "hello docker"
(3)docker images : 列出image
例子:列出docker中所有的镜像
G:\docker>docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEdocker-fun latest 0d3835780db9 About an hour ago 109MBubuntu latest 113a43faa138 8 days ago 81.2MBnginx latest cd5239a0906a 8 days ago 109MBdocker4w/nsenter-dockerd latest cae870735e91 7 months ago 187kB
(4)docker run : 运行container
例子:运行nginx 这个名称的镜像 并指定本地8080端口映射到nginx的80端口(-p 8080:80),同时 以守护线程运行(-d)
docker run -p 8080:80 -d nginx735adf29a77a85373bb43ad26b3eaf1c80e8b0f96f762513fc12e9863d68298f
(5)docker ps : 列出container
例子:docker ps 列出正在运行的容器(container),另外 docker ps -a 列出所有container包括未运行的
G:\docker>docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES2c41a966990d docker-fun "nginx -g 'daemon of…" 13 seconds ago Up 13 seconds 0.0.0.0:8080->80/tcp admiring_keldysh
(6)docker stop :停止一个在运行的 container
例子:docker stop 2c41a966990d 根据对应的containerId 停止运行指定容器,注意,只有停止运行的容器才能删除
G:\docker>docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES2c41a966990d docker-fun "nginx -g 'daemon of…" 3 minutes ago Up 3 minutes 0.0.0.0:8080->80/tcp admiring_keldyshG:\docker>docker stop 2c41a966990d2c41a966990dG:\docker>docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESG:\docker>
(7)docker rm : 删除 container
例子:docker rm 5407b8208096 20019b3694de a8294fdb14c1 3183d7936ecf 600fadd3b239 根据containerID删除指定的container。可以一次性选择多个删除
G:\docker>docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES5407b8208096 hello-world "/hello" 43 minutes ago Exited (0) 43 minutes ago unruffled_engelbart20019b3694de hello-world "/hello" 43 minutes ago Exited (0) 43 minutes ago gifted_lewina8294fdb14c1 hello-world "/hello" 43 minutes ago Exited (0) 43 minutes ago youthful_panini3183d7936ecf ubuntu "echo hello docker" 44 minutes ago Exited (0) 44 minutes ago inspiring_minsky600fadd3b239 ubuntu "echo hello docker" 44 minutes ago Exited (0) 44 minutes ago thirsty_dijkstraG:\docker>docker rm 5407b8208096 20019b3694de a8294fdb14c1 3183d7936ecf 600fadd3b2395407b820809620019b3694dea8294fdb14c13183d7936ecf600fadd3b239G:\docker>docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
(8)docker rmi : 删除 images
例子:docker rmi e38bc07ac18e 删除 e38bc07ac18e这个image ID 的镜像 rmi 就是 remove image的意思。
G:\docker>docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEdocker-fun latest 0d3835780db9 2 minutes ago 109MBubuntu latest 113a43faa138 8 days ago 81.2MBnginx latest cd5239a0906a 8 days ago 109MBhello-world latest e38bc07ac18e 2 months ago 1.85kBdocker4w/nsenter-dockerd latest cae870735e91 7 months ago 187kBG:\docker>docker rmi e38bc07ac18eUntagged: hello-world:latestUntagged: hello-world@sha256:4555e23a9cf5a1a216bd8b0d71b08a25e4144c2ecf6adb26df9620245ba99529Deleted: sha256:e38bc07ac18ee64e6d59cf2eafcdddf9cec2364dfe129fe0af75f1b0194e0c96Deleted: sha256:2b8cbd0846c5aeaa7265323e7cf085779eaf244ccbdd982c4931aef9be0d2fafG:\docker>docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEdocker-fun latest 0d3835780db9 3 minutes ago 109MBubuntu latest 113a43faa138 8 days ago 81.2MBnginx latest cd5239a0906a 8 days ago 109MBdocker4w/nsenter-dockerd latest cae870735e91 7 months ago 187kB
(9)docker cp : 在host和container 之间拷贝文件
例子:docker cp index.html 735adf29a77a://usr/share/nginx/html 将index.hml这个文件拷贝到 735adf29a77a 这个containerID的容器下的/usr/share/nginx/html中
G:\docker>docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES735adf29a77a nginx "nginx -g 'daemon of…" 8 minutes ago Up 8 minutes 0.0.0.0:8080->80/tcp affectionate_vaughanG:\docker>docker cp index.html 735adf29a77a://usr/share/nginx/html
(10)docker commit : 保存改动为新的image
例子:docker commit 735adf29a77a docker-fun 其中 735adf29a77a是container ID docker-fun 是新的image名称
G:\docker>docker commit 735adf29a77a docker-funsha256:0d3835780db91217f9c8cf56b5b6659ed909f3e80ecd9661e5e92b6eaf8daea4G:\docker>docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES735adf29a77a nginx "nginx -g 'daemon of…" 9 minutes ago Up 9 minutes 0.0.0.0:8080->80/tcp affectionate_vaughanG:\docker>docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEdocker-fun latest 0d3835780db9 13 seconds ago 109MBubuntu latest 113a43faa138 8 days ago 81.2MBnginx latest cd5239a0906a 8 days ago 109MBhello-world latest e38bc07ac18e 2 months ago 1.85kBdocker4w/nsenter-dockerd latest cae870735e91 7 months ago 187kB