Docker 命令大全

1. docker登陆

docker login -u 用户名 -p 密码 IP地址

2. 退出登陆
docker logout
3. 查询本地仓库的所有镜像
docker images
4. 重命名镜像
docker tag 镜像id 镜像:版本号
5. 删除镜像
docker rmi 镜像id
6. 删除容器 
docker rm  容器id
7. 停止容器
docker stop 容器id
8. 查询本地所有容器
docker ps
9. 查询本地所有运行的容器
docker ps -a
10. 导出容器快照
docker export 容器id > x:/xx/xx.tar
11. 导入容器快照
docker import - x:/xx/xx.tar 
12. 导出镜像
docker save 镜像id > x:/xx/xx.tar
13. 导入境像
docker load < x:/xx/xx.tar  
14. 容器保存为镜像 
docker commit  容器名  新镜像名
15. 查看docker容器启动命令,映射目录,相关配置
docker inspect 容器名
16. 启动容器
docker run -it --name 容器名 -v 本地映射路径:镜像里映射路径 -d 镜像名:版本 /bin/sh
17. 进入容器
docker exec -it 容器id /bin/sh

退出 exit
 18. 主机容器相互拷贝文件
docker cp /www/runoob 96f7f14e99ab:/www/

docker cp  96f7f14e99ab:/www /tmp/
 19. docker安装启动
yum install docker

systemctl start docker   (启动docker服务)

  systemctl status docker (查看docker服务状态)
  systemctl stop docker   (停止docker服务)
  systemctl restart docker (重启docker服务)
  systemctl enable docker (设置开机自启)

 20. Dockerfile  构建镜像
# 进入Dcokerfile文件的目录下  . 代表当前目录执行dockerfile  
docker build -t sentinel:v1 . 

# 启动镜像                容器名     镜像名:版本
 docker run -d --name  sentinel  sentinel:v1 

# 查看运行容器后 10 行日志
docker logs --tail=10 -f  sentinel
 21. docker容器commit之后变得非常大的原因及解决办法
先进入要打包的容器,执行以下命令对根目录下的文件打包:
tar -cvf img.tar --exclude=/proc --exclude=/sys --exclude=img.tar /
然后将打包好的文件拷贝到宿主机下随便一个目录下:
sudo docker cp 容器ID:/img.tar .
最后生成新的镜像:
cat img.tar | sudo docker import - img
原因:
原因就是直接在容器里进行了很多操作,比如apt update/install、pip install等等,而没有使用Dockerfile来构建镜像。
docker镜像的构建方式是以层的概念来实现的,在容器内所做的所有操作都会在构建镜像时运行一遍,每一个操作所涉及到的内存空间,
都会成为镜像文件的一部分。所以大家一般在容器里开发到一定阶段想要commit成镜像的时候,会发现生成的镜像会有几十G的体量,可怕。
https://blog.csdn.net/weixin_43220532/article/details/123848167

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted on 2020-05-07 20:51  闹不机米  阅读(240)  评论(0编辑  收藏  举报

导航