docker 与docker-compose安装
docker:https://www.runoob.com/docker/centos-docker-install.html
docker-compose:https://www.runoob.com/docker/docker-compose.html
基于centos的docker + docker-compose一键安装
docker安装命令如下:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
也可以使用国内 daocloud 一键安装命令:
curl -sSL https://get.daocloud.io/docker | sh
下载完毕后需要重启一下docker
systemctl restart docker
docker-compose下载连接
github 可能不稳定
curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
也可以
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
修改为可执行文件
chmod +x /usr/local/bin/docker-compose
创建软连接
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
安装成功
docker-compose version
docker 常用命令
docker 安装
查看所有容器
docker ps -a
刪除空鏡像
// 停止相关的镜像
docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker stop
docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker rm
// 刪除鏡像
docker images|grep none|awk '{print $3 }'|xargs docker rmi
删除所有镜像
1.进入root权限
sudo su
2.停止所有的container,这样才能够删除其中的images:
docker stop $(docker ps -a -q)
如果想要删除所有container的话再加一个指令:
docker rm $(docker ps -a -q)
3.查看当前有些什么images
docker images
4.删除images,通过image的id来指定删除谁
docker rmi
想要删除untagged images,也就是那些id为的image的话可以用
docker rmi $(docker images | grep "^" | awk '{print $3}')
要删除全部image的话
docker rmi $(docker images -q)
Docker停止并删除所有容器
sudo docker ps -a -q // 查看所有容器ID
sudo docker stop $(sudo docker ps -a -q) // stop停止所有容器
sudo docker rm $(sudo docker ps -a -q) // remove删除所有容器
一次性停止并删除所有容器:
docker stop $(docker ps -q) & docker rm $(docker ps -aq)
sum:
docker ps // 查看所有正在运行容器
docker stop containerId // containerId 是容器的ID
docker ps -a // 查看所有容器 $ docker ps -a -q // 查看所有容器ID
docker ps -a --no-trunc 不做删减得显示所有
docker stop $(docker ps -a -q) // stop停止所有容器
docker rm $(docker ps -a -q) // remove删除所有容器
docker image prune //清理临时残留镜像
copy docker 文件内容
docker cp containerID:/root/123 /root/123 copy docker 文件到物理机
docker cp /root/123 containerID:/root/123 copy 物理机 文件到docker
实战利用:
镜像通过docker-compose.yml 安装
利用docker 运行并且开放代理端口 -it 指定镜像
docker run -d -p 8080:8080 -p 5005:5005 -it ff6f7cbf6bb5 java -Djava.security.egd=file:/dev/./urandom -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar /spring-cloud-gateway-0.0.1-SNAPSHOT.jar
docker 搭建环境常用命令
下载漏洞环境
https://github.com/vulhub/vulhub
搭建docker漏洞环境
进入到漏洞目录
docker-compose up -d
docker 操作
docker ps -a --no-trunc 查看docker并且完整显示docker执行命令
docker stop containerID 关闭docker环境
docker rm containerID 移除docker container
docker images 查看所有的镜像
docker image rmi imageID 移除镜像文件
docker attach 连接正在运行的docker
常用操作
docker exec -it containerID /bin/bash 在docker内执行 /bin/bash
docker cp containerID:/root/file /root/file 将docker里面的file文件复制到linux的/root/file
docker run -p 8080:8080 -p 5005:5005 -d -it containerID command 指定端口映射运行docker,一般用于远程调试