1. // 查看镜像
  2. docker search name
  3. // 下载镜像
  4. docker pull xxx
  5. // 查看已经下载的镜像
  6. docker images
  7. // 删除镜像
  8. docker rmi id/tag
  9. // 容器打包为镜像
  10. docker commit 容器id 镜像名:tag
  11. // 打包镜像
  12. docker save -o test-image.tar centos:latest
  13. // 导入镜像
  14. docker load -i xxx.tar
  15. // 创建镜像
  16. docker commit -m "message" image_name
  17. // 查看日志
  18. docker logs -n 100 containerId
  19. // 实时日志
  20. docker logs -f --tail=100 container
  21. // 传递环境变量
  22. docker run -e JAVA_OPTS='-Dhudson.model.DownloadService.noSignatureCheck=true' -p 8080:8080 -p 50000:50000 -v /home/dict/jenkins:/var/jenkins_home -d -it jenkins
  23. // 复制文件到容器
  24. docker cp /home/test.txt container:/etc/dir
  25. // 指定用户进入
  26. docker exec -it -u root container bash

问题:当删除同一个镜像有不同的仓库时,也就是一个镜像id有两个镜像时要删除镜像不能使用镜像id,而要是要仓库:tag的方式唯一区分出镜像才能删除

镜像

拉取镜像

docker pull:从仓库中拉取镜像,具体格式可以通过使用docker pull -- help查看

查看镜像

docker image ls:查看docker镜像
docker image ls -a:上面的命令只能查看顶层镜像,这可还可以查看中间镜像
docker image ls ubuntu:查看某个仓库的镜像
docker image ls ubuntu:16.04:查看某个特定镜像
docker image ls -f since=mongo:3.2:查看mongo3.2以后的镜像
docker image ls -f before=mongo:3.2:查看mongo3.2以前的镜像
docker image ls --format "{{.ID}} {{.Repository}}":按照go语言模板格式列出镜像,具体查看go语言

统计docker占用的磁盘大小

docker system df:df命令是用于统计磁盘信息的

删除镜像

docker image prune:删除悬虚镜像(无用镜像)
docker image rm 镜像长短id/镜像名/镜像摘要

查看docker版本

docker -v/--version:查看docker版本

容器

运行容器

docker run ubuntu:18.04:启动一个容器,具体参数看https://www.runoob.com/docker/docker-run-command.html
-d:后台运行

查看容器

docker container ls -a:查看所有容器
docker container ls:查看运行容器
docker inspect 容器id:查看容器详细信息

删除容器

docker container rm 容器id:删除容器,container可以省略,docker的rm命令默认删除的就是container

进入容器

docker attach 容器id:进入容器,使用exit退出时会停止容器
docker exec 容器id:进入容器,使用exit退出时不会停止容器

.导入导出

docker export 7691a814370e > ubuntu.tar:导出容器
cat ubuntu.tar | docker import - test/ubuntu:v1.0:导出容器,注意导入的是镜像,要查看使用查看镜像的命令

授权

将docker权限给普通用户

查询是否有docker组

cat /etc/group | grep docker
// 没有添加
groupadd docker

将用户添加到组

gpasswd -a ${USER} docker

重启docker

systemctl restart docker
// 更新组信息
pkill X