这篇文章上次修改于 463 天前,可能其部分内容已经发生变化,如有疑问可询问作者。

最近的比赛要用到docker,去学习了下怎么用,感觉这玩意儿是真的强

前言

docker!yyds!真的好用,一键部署

我学习的是这个教程:https://yeasy.gitbook.io/docker_practice

教程里前六章为基础内容讲解比较详细,可以自行阅读,下面记载一下指令方便后续查阅

指令

镜像

拉取镜像

 docker pull [选项] <域名/IP>[:端口号] <用户名>/<软件名>
 如:
 docker pull ubuntu:18.04

运行镜像

docker run -it --rm ubuntu:18.04 bash
  • -it-i:交互式操作,-t呼出一个终端

  • --rm:容器退出后随之将其删除

  • ubuntu:18.04:这是指用 ubuntu:18.04 镜像为基础来启动容器

  • bash:放在镜像名后的是 命令

列出镜像

# 正在运行的
docker image ls
# 所有的
docker image ls -a

删除镜像

docker image rm [选项] <镜像1> [<镜像2> ...]

commit构建镜像

docker commit [选项] <容器> <命名>

docker commit \
    --author "watashi" \
    --message "修改了xx" \
    webserver \
    nginx:v2

作者建议使用Dockerfile构建镜像,不推荐commit

容器

新建

docker run ubuntu:18.04 /bin/echo 'Hello world'
  • -d:后台运行,docker container logs <容器>可以查看输出

改变容器状态

docker container start/stop <容器> 

进入容器

docker attach <容器>

使用ctrl+d或者exit退出时容器会关闭,使用ctrl+p然后ctrl+q退出时容器不会关闭

docker exec -it <容器> bash

退出时容器不会关闭

导出容器

docker export <容器id> > ubuntu.tar

导入容器快照

docker import <文件>/<url> [命名(可选)]

删除容器

 docker container rm <容器>