docker学习笔记


镜像管理

docker image IS / docker images 查看镜像

docker search [image] 检索镜像

eg:docker search nginx

docker pull [image] 拉取镜像

docker push [image] 上传镜像

eg:docker push geekhour/hello-docker:latest

docker save [image] -o FILE / 保存镜像
docker save [image] > FILE

eg:docker save geekhour/hello-docker:latest > hello-docker.tar

docker load -i FILE 导⼊镜像

eg:docker load -i hello-docker.tar

docker history [image] 查看镜像历史

docker rmi [image] / docker image rm [image] 删除镜像

docker image prune 删除不再使⽤的镜像

docker import [URL/FILE] 将文件系统导入为镜像

docker commit [container] [image] 从容器创建镜像

网络管理

docker network ls 列出可用网络

docker network inspect [network] 查看⽹络详细信息

docker network create [network] 创建⼀个新的⽹络

docker network rm [network] 删除⼀个⽹络

docker network connect [network] [container] 将容器连接到⽹络

docker network disconnect [network] [container] 将容器从⽹络断开

插件管理

docker plugin ls 列出插件

docker plugin install [plugin] 安装插件

docker plugin enable [plugin] 启⽤插件

docker plugin disable [plugin] 禁⽤插件

docker plugin rm [plugin] 卸载插件

容器管理

docker create [image] 创建容器(仅创建,不运⾏)

docker run [image] 创建并运⾏容器

docker start [container] 启动容器

docker stop [container] 停⽌容器

docker restart [container] 重启容器

docker ps / 列出正在运⾏的容器

docker container ls

docker ps -a / 列出所有容器
docker container ls -a

docker exec -it [container] bash / 以交互模式进⼊容器
docker attach [container

docker export [container] -o FILE / 导出容器
docker export [container] > FILE

docker import FILE 导⼊容器快照

docker logs [container] 查看容器⽇志

docker rm [container] / 删除容器
docker container rm [container]

docker port [container] 查看容器端⼝映射

docker top [container] 显示容器内进程

docker cp [FILE] [container]:[PATH] 复制本地⽂件到容器内的指定路径

docker diff [container] 显示容器内的变化

docker stats [container] 显示容器资源使⽤情况

数据卷管理

docker volume create [volume] 创建⼀个数据卷

docker volume ls 查看数据卷

docker volume inspect [volume] 查看数据卷详细信息

docker volume rm [volume] 删除数据卷

docker volume prune 删除所有未使⽤的数据卷

日常操作

docker info 查看docker 系统信息

docker version 查看Docker版本

docker --help 查看Docker帮助⽂档

docker [command] --help 查看Docker命令帮助

docker login/logout 登录/退出DockerHub

容器运行

语法格式:

docker run [options] image [command] [arg...]

docker run --name [name] [image] 创建 运⾏并命名容器

docker run -d [image] 创建⼀个容器并后台运⾏

docker run -p [hostPort]:[containerPort] [image] 创建⼀个容器并指定端⼝映射

docker run -P [image] 创建⼀个容器并指定端⼝映射(随机分配)

docker run -e [key=value] [image] 创建⼀个容器并指定环境变量

docker run -w [PATH] [image] 创建⼀个容器并指定⼯作⽬录

docker run -name [name] [image] 创建⼀个容器并指定容器名称

docker run [image] [command] 创建⼀个容器并在容器中执⾏命令(交互模式)

docker run -d -p [hostPort]:[containerPort] -e [key=value] -w [PATH] --name [name] [image]
创建⼀个容器,并指定容器名称,后台运⾏,端⼝映射环境变量,⼯作⽬录

eg:docker run -it nginx:latest /bin/bash使⽤镜像nginx:latest来启动⼀个容器,并在容器内执⾏交互式bash shel

eg:docker run -it -p 3316:3306 -v /data:/data -d mysql:latest创建⼀个mysql容器,后台模式启动,主机80端⼝映射到容器80端⼝,主机/data⽬录映射到容器/data⽬录

常用Dockerfile指令

FROM [base_image] 指定基础镜像,必须为Dockerfile的第⼀条指令;

ADD ⽤于将⽂件复制到镜像中,源可以使URL或者本地⽂件,也可以⼀个压缩⽂件(⾃动解压);

COPY [--chown=<user>:<group>] [源路径] [⽬标路径] ⽤于将⽂件拷⻉到镜像中,源只能是本地⽂件;

WORKDIR [PATH] ⽤于指定⼯作⽬录,可以使⽤多个WORKDIR指令,如果使⽤相对路径,则是相对于上⼀条WORKDIR指令所指定的⽬录;

ENV <key> <value> / ENV <key1>=<value1> <key2>=<value2> ... ⽤于设置环境变量

CMD <命令> / CMD ["可执⾏⽂件", "参数1", "参数2" ...] ⽤于指定默认的容器主进程,每个Dockerfile中只能有⼀条CMD指令,如果有多条,则只有最后⼀条会⽣效;

VOLUME <路径> / VOLUME ["路径1", "路径2"...] ⽤于定义匿名卷(持久化⽬录)


文章作者: 阿浩
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 阿浩 !
评论
  目录