-
更新源
apt-get update -
然后卸载所有旧的版本
apt-get remove docker docker-engine docker.io containerd runc
-
安装docker以及docker仓库所需的所有依赖包:
apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
-
添加docker官方的GPG秘钥
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg | sudo apt-key add -
(成功回显为OK) -
vim/etc/apt/sources.list.d/docker.list
将deb https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/ buster stable加进去保存即可 -
然后,开始安装
apt-get install docker-ce docker-ce-cli containerd.io
apt install docker-compose -
我们想尝试一下从仓库上抓取hello-world这个image试试:
docker image pull library/hello-world
-
docker run hello-world 试一试
docker常用命令
docker version #查看Docker版本
systemctl start docker #启动
systemctl stop docker #关闭docker
systemctl restart docker #重启docker服务
systemctl daemon-reload #守护进程重启
docker images #查看本地镜像
docker images -a #查看所有的镜像
docker images php #查看仓库名为php的镜像
docker rmi -f 镜像ID #强制删除镜像
docker rmi -f 镜像名A:tag 镜像名B:tag #删除多个镜像
docker rmi -f $(docker images -aq) #删除全部镜像
docker save #导出镜像 例如:docker image save centos > docker-centos7.4.tar.gz
docker load #导入镜像 例如:docker image load -i docker-centos7.4.tar.gz
docker search xx #查找相关镜像 例如:docker search redis
docker search -s 30 redis #查找start大于30的redis镜像
docker pull name:标签 #从查找的镜像中下载下来,标签默认是latest 例如:docker pull redis 等价于 docker pull redis:latest
docker run -d -P --name xxx REPOSITORY:TAG #根据镜像启动容器
-d:让容器在后台运行
-P:将容器内部使用的网络端口映射到我们使用的主机上
-p:自定义端口映射,如 -p 8002:80 ,意思就是将容器的80端口映射到宿主机的8002端口
--name:该参数可选,指定容器的名字
docker ps #查看运行中的容器
docker ps –a #查看所有的容器
docker start 容器ID #启动容器
docker stop 容器ID #停止容器
docker restart 容器ID #重启容器
docker rm 容器ID #删除容器,删除容器前需停止该容器
docker rm `docker ps -aq` #删除全部容器
docker exec -it 容器id或容器名字 /bin/bash 进入docker容器进行管理