docker常用命令

从网络上查找已发版的库

docker search [镜像库名]

#以守护模式进入镜像bash命令行

docker run -it [镜像ID] bash 

​#与上面不同的是可以执行systemctl命令

​docker run -d --privileged=true [镜像ID] /usr/sbin/init 

​docker exec -it [上条命令返回ID] /bin/bash

#将容器保存为镜像

docker commit [容器ID] [镜像ID] 

#显示当前所有容器

docker ps -a

#继续运行已停止(Exit)的容器

docker start -ia [容器ID] 

#显示当前所有镜像

docker images -a 

#查看容器端口映射

docker inspect [容器ID] | grep IPAddress 


镜像(Images) 命令


#删除镜像

docker rmi [镜像ID] 

#镜像的导入及导出

#导出为tar 

docker save [镜像ID] > [导出镜像文件名]

docker save [镜像ID] -o [导出镜像文件名] 

#导入

tardocker load < [导入镜像文件名] 

#更改镜像名称,导入进去的是无名称的

docker tag [镜像ID] [name:tag] 


窗口(Container) 命令


#删除容器

docker rm [容器ID] 

#容器的导入及导出

#导出为tar

docker export [容器ID] > [导出容器文件名]

#导入tar

cat [导入容器文件名] | docker import - [镜像名称]:[版本号]

#容器端口映射到宿主机端口

1.先以交互模式进入到镜像bash中

docker create -it -p 8888:8888 [镜像ID] bash

这时候用命令【docker ps -a】可以看到端口还没有绑定 

接着用命令【docker start [容器ID]】启动容器,再用【docker ps -a】命令可以看到端口已经绑定 

不过这时候还不能访问,因为容器里的程序还没启动

使用【docker attach [容器ID]】命令来连接该容器

在容器中启动程序,并查看网络绑定状态 

这时候再访问宿主机的ip:端口号就可以浏览到了


解决docker,ubuntu镜像中没有vi/vim

apt update

apt install vim

docker image build -t koa-demo . 

docker run -it [镜像REPOSITORY] 

docker save -o docker-centos-httpd.tar [镜像REPOSITORY]:[镜像TAG]


Docker之容器端口绑定本地端口

https://blog.csdn.net/qq_32403063/article/details/99483529

docker ps -a --no-trunc  


docker中启动所有的容器命令

docker start $(docker ps -a | awk '{ print $1}' | tail -n +2)


docker中删除所有的容器命令

docker rm $(docker ps -a | awk '{ print $1}' | tail -n +2)


docker中删除所有的镜像

docker rmi $(docker images | awk '{print $3}' |tail -n +2)


进入到窗口bash命令行

docker exec -it [容器ID] bash


对已经创建的容器用docker update 更新:

docker update --restart=always  [容器ID]


Docker中的文件系统映射


1. 主机上的 A 目录映射到容器 B

docker run -v /path/to/host/A:/path/in/container/B image_name

2. 容器里面的C目录映射到主机D

太复杂不建议用


 

docker常用命令
OdooBot July 15, 2024
Share this post
Tags
Archive
centos7如何将docker容器配置成开机自启动