一剪闲云一溪月,一程山水一年华。
一世浮生一刹那,一树菩提一烟霞。
——《岁月静好 现世安稳》白落梅
在UbuntuLTS版本中安装Docker-CE(社区版)教程
「题外话」以下命令中安装包管理工具我都用的aptitude,没安装的注意先安装一下。简单说一下,apt/apt-get/aptitude之间的比较和区别:个人感觉aptitude > apt > apt-get,一部分原因是随着版本更迭走,另一部分aptitude的安装依赖表示的稍好看那么一些哈哈。另外,我实际上使用apt-fast调用aptitude的,多线程倍儿香~
Ubuntu 20.04 安装 Docker-CE
更新apt软件包索引并安装软件包以允许apt通过HTTPS使用存储库
1
sudo apt-get update && sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
添加Docker的官方GPG密钥
1
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
使用以下命令来设置稳定的存储库
1
2
3
4sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
(lsb_release -cs) \
stable"更新apt程序包索引,并安装最新版本的Docker Engine和容器
1
sudo apt-get update && sudo apt-get install docker-ce docker-ce-cli containerd.io
启动 docker
1
sudo systemctl enable docker && sudo systemctl start docker
Docker免sudo运行
我们可以将当前用户添加到 docker 用户组,即可不用 sudo 运行 docker。此时docker在root权限下运行,运行产生残余文件为root所有,需要提权删除。
1
sudo usermod -aG docker $USER
注销当前登录后重新登录,即可测试免sudo运行docker。
1
docker run hello-world
Ubuntu 18.04 安装 Docker-CE
更换国内软件源,推荐中国科技大学的源,稳定速度快(可选)
1
2
3sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
sudo aptitude update安装需要的包
1
sudo aptitude install apt-transport-https ca-certificates software-properties-common curl
添加 GPG 密钥,并添加 Docker-ce 软件源,这里还是以中国科技大学的 Docker-ce 源为例
1
2
3curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \
(lsb_release -cs) stable"添加成功后更新软件包缓存
1
sudo aptitude update
安装 Docker-ce
1
sudo aptitude install docker-ce
设置开机自启动并启动 Docker-ce(安装成功后默认已设置并启动,可忽略)
1
2sudo systemctl enable docker
sudo systemctl start docker测试运行
1
sudo docker run hello-world
Ubuntu 16.04 安装 Docker
选择国内的云服务商,这里选择阿里云为例
1
curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -
安装所需要的包
1
sudo aptitude install linux-image-extra-$(uname -r) linux-image-extra-virtual
添加使用 HTTPS 传输的软件包以及 CA 证书
1
2sudo aptitude update
sudo aptitude install apt-transport-https ca-certificates添加GPG密钥
1
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
添加软件源
1
echo "deb https://apt.dockerproject.org/repo ubuntu-xenial main" | sudo tee /etc/apt/sources.list.d/docker.list
添加成功后更新软件包缓存
1
sudo aptitude update
安装docker
1
sudo aptitude install docker-engine
启动 docker
1
2sudo systemctl enable docker
sudo systemctl start docker
Docker免sudo运行
我们可以将当前用户添加到 docker 用户组,即可不用 sudo 运行 docker。此时docker在root权限下运行,运行产生残余文件为root所有,需要提权删除。
1 | sudo groupadd docker |
注销当前登录后重新登录,即可测试免sudo运行docker。
1 | docker run hello-world |
常用Docker命令 (docker cheat sheet)
常用docker命令 | COMMAND |
---|---|
启动docker | system start docker |
查看docker启动状态 | systemctl status docker |
查看镜像 | docker images |
查看所有容器包括停止运行的 | docker ps -a docker ps -aq |
启动所有容器 | docker start $(docker ps -a -q) |
停止容器 | docker stop gitlab-redis |
停止所有的容器 | docker stop $(docker ps -aq) |
删除所有已经停止的容器 | docker rm $(docker ps -a -q) |
删除镜像 | 需要先停止关联的容器 删除该容器 docker rm 容器ID(CONTAINER ID) 删除镜像 docker rmi 镜像ID(IMAGE ID) |
批量删除名字包含”none”关键字的镜像 | docker rmi $(docker images |