docker的一些简单命令
前言
简单记录一下学习过程中涉及到的docker
操作,以后会坚持更新这篇文章的
启动所有容器
docker start $(docker ps -a | awk '{ print $1}' | tail -n +2)
关闭所有容器
docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2)
删除所有容器
docker rm $(docker ps -a | awk '{ print $1}' | tail -n +2)
删除所有镜像(慎用)
docker rmi $(docker images | awk '{print $3}' |tail -n +2)
启动环境
docker-compose up -d
移除环境
docker-compose down
查看当前所有容器,status字段可以看到当前容器所处的状态,up表示容器处于启动状态。
docker ps -a
进入容器
三种方法都可以,第一种是最通用的方法
0x01
进入容器,我这里是开了一个Oracle的容器,先要看一下CONTAINER ID
,再使用下面的命令进入
docker exec -it 2cabbcc27e7d bash
0x02
docker attach 容器id,这种方法进入容器会存在一个问题,当多个终端同时进入容器时,所有窗口会同步显示,所以不太适合生产环境使用。
docker attach 3a3afa942911
0x03
使用nsenter进入容器
docker inspect -f {{.State.Pid}} 3a3afa942911 #首先查看容器的pid
nsenter --target 15202 --mount --uts --ipc --net --pid #根据获取到的pid进入容器
退出容器
容器里面
对于直接使用exit和快捷 方式(Ctrl+D)退出的容器,如果还想重新启动,需要使用命令 docker start 容器id或容器名称
容器外面
#停止容器
docker stop 容器名/id
#重新启动容器
docker start 容器名/id(已经停止的容器)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 doathuwant!