一、docker安装
代码语言:javascript复制sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's download.docker.com mirrors.aliyun.com/docker-ce ' /etc/yum.repos.d/docker-ce.repo
sudo yum install -y docker-ce-3:26.1.3-1.el9 docker-ce-cli-1:26.1.3-1.el9 containerd.io docker-buildx-plugin docker-compose-plugin
systemctl enable docker && systemctl start docker # 启动docker
二、docker常用命令
2.1 拉取一个镜像
docker pull 镜像名
代码语言:javascript复制docker pull nginx:stable-perl
2.2 启动一个容器
docker run -d --name 容器名 镜像名
代码语言:javascript复制docker run -d --name nginx-demo nginx:stable-perl
2.3 进入一个容器
docker exec -it 容器名 /bin/sh
代码语言:javascript复制docker exec -it nginx-demo /bin/sh
2.4 退出一个已进入的容器
代码语言:javascript复制exit
2.5 停止一个运行的容器
docker stop 容器名
代码语言:javascript复制docker stop nginx-demo
2.6 将一个容器提交为一个镜像
docker commit 容器名 镜像名
代码语言:javascript复制docker commit nginx-demo nginx-demo-image:v1
2.7 从容器里拷贝文件或目录到主机
docker cp 容器名:路径 主机路径
代码语言:javascript复制docker cp nginx-demo:/tmp/test.txt /tmp/
docker cp nginx-demo:/tmp/test /tmp/
2.8 从主机拷贝目录或文件到容器
docker cp 主机路径 容器名:路径
代码语言:javascript复制docker cp /tmp/test.txt nginx-demo:/tmp/
docker cp /tmp/test nginx-demo:/tmp/
2.9 查看最新100行容器日志
docker logs -f 容器名 --tail 100
代码语言:javascript复制docker logs -f nginx-demo --tail 100
2.10 删掉一个容器
docker rm -f 容器名
代码语言:javascript复制docker rm -f nginx-demo
2.11 删掉一个镜像
docker rmi -f 镜像名
代码语言:javascript复制docker rmi -f nginx-demo-image:v1
2.12 给一个镜像重新打标签
docker tag 镜像名 新镜像名
代码语言:javascript复制docker tag nginx:stable-perl nginx-demo-image:v1
2.13 获得容器的启动参数
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock:ro assaflavie/runlike 容器名
代码语言:javascript复制docker run --rm -v /var/run/docker.sock:/var/run/docker.sock:ro assaflavie/runlike nginx-demo
2.14 导出一个镜像
docker save 镜像名 -o 导出文件名
代码语言:javascript复制docker save nginx-demo-image:v1 -o nginx-demo-image-v1.tar.gz
2.15 加载导出的镜像
docker load -i 导出文件名
代码语言:javascript复制docker load -i nginx-demo-image-v1.tar.gz
2.16 查看有哪些正在运行的容器
代码语言:javascript复制docker ps
2.17 查看有哪些镜像
代码语言:javascript复制docker images
2.18 清理调无用的docker数据
代码语言:javascript复制docker system prune
2.19 重启一个容器
docker restart 容器名
代码语言:javascript复制docker restart nginx-demo
2.20 设置容器开机自启
--restart=always参数
代码语言:javascript复制docker run -d --name nginx-demo --restart=always nginx:stable-perl