Ubuntu安装Docker

一,Docker简介

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。

用过虚拟机的应该对虚拟化技术有点印象,不知道也没关系,就把它当成轻量级的虚拟机吧(虽然一个是完全虚拟化,一个是操作系统层虚拟化)

具体的学习网址如下:

https://www.runoob.com/docker/docker-tutorial.html

二,安装Docker

1.查看内核版本:

sudo uname -a

我是虚拟机装的rocky,linux 5.14 内核,docker官方说至少3.8以上,建议3.10以上(ubuntu下要linux内核3.8以上, RHEL/Centos 的内核修补过, centos6.5的版本就可以试试)

2.把apt包更新到最新(如果更新过就跳过这步)

先检查

sudo apt update

后更新

sudo apt upgrade

(期间要选择确认,输入 y 即可)

如果不行可以:sudo apt upgrade --fix-missing

3.卸载旧版本(如果是第一次安装跳过这一步):

sudo apt remove docker docker-engine docker.io containerd runc

4.安装需要的包:

sudo apt install apt-transport-https ca-certificates software-properties-common curl

(期间要选择确认,输入 y 即可)

5.添加 GPG 密钥,并添加 Docker-ce 软件源****

(为了速度用的: 中国科技大学的 Docker-ce 源****)****

添加密钥

curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

验证密钥: 通过搜索指纹的后8个字符,验证现在是否拥有带有指纹的密钥

sudo apt-key fingerprint 0EBFCD88

添加源

sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \

$(lsb_release -cs) stable"

#注意:添加错了可以用以下命令删除

#查询keyid,下图

sudo apt-key list

#keyid 就是90那一串

sudo apt-key del <keyid>

#加参数-r可以移除

sudo add-apt-repository -r "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

6,安装Docker

sudo apt install docker-ce

(期间要选择确认,输入 y 即可)

7, 检查docker 版本:

sudo docker version

8.重启机器,检查是否实现开机启动docker

sudo docker images

如果报错,请重新启动 docker 并加入开机启动

sudo systemctl start docker

sudo systemctl enable docker

9.重新对应一下 docker 的镜像地址

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'

{

"registry-mirrors": ["https://yxzrazem.mirror.aliyuncs.com"]

}

EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

10 .测试 docker

sudo docker run hello-world

11.docker 基本命令

  1. 查看版本: docker -v

  2. 查看镜像: docker images

  3. 搜索镜像:docker search 镜像关键字

  4. 镜像拉取:docker pull 镜像关键字

  5. 镜像删除:docker rmi 镜像id或镜像名称

(rmi后加空格加-f表示强制删除)

  1. 镜像变成容器:

docker run -d -p 8080:8080 --name tomcat-test tomcat

-d 后台运行

8080:8080 端口映射

--name tomcat-test 设置容器的名字

tomcat 使用的镜像名字

  1. 查询当前全部的容器:docker ps -a

如果去掉-a的话就是查询运行的容器

  1. 删除容器:docker rm 容器id

(rm后加空格加-f表示强制删除)

  1. 进入容器内部:docker exec -it 容器id /bin/bash

  2. 停止容器:docker stop 容器id/容器名字

  3. 启动容器:docker start 容器id/容器名字

  4. 显示容器资源的使用情况: docker stats -a

如果去掉-a的话就是查询运行的容器

CONTAINER ID 与 NAME: 容器 ID 与名称。

CPU % 与 MEM %: 容器使用的 CPU 和内存的百分比。

MEM USAGE / LIMIT: 容器正在使用的总内存,以及允许使用的内存总量。

NET I/O: 容器通过其网络接口发送和接收的数据量。

BLOCK I/O: 容器从主机上的块设备读取和写入的数据量。

PIDs: 容器创建的进程或线程数。

Ctrl + C 退出

相关推荐
Johny_Zhao43 分钟前
Docker + CentOS 部署 Zookeeper 集群 + Kubernetes Operator 自动化运维方案
linux·网络安全·docker·信息安全·zookeeper·kubernetes·云计算·系统运维
小毛驴8501 小时前
Linux 后台启动java jar 程序 nohup java -jar
java·linux·jar
zwjapple1 小时前
docker-compose一键部署全栈项目。springboot后端,react前端
前端·spring boot·docker
一心0922 小时前
ubuntu 20.04.6 sudo 源码包在线升级到1.9.17p1
运维·ubuntu·sudo·漏洞升级
好好学习啊天天向上2 小时前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
tan180°3 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
代码老y3 小时前
Docker:容器化技术的基石与实践指南
运维·docker·容器
典学长编程4 小时前
Linux操作系统从入门到精通!第二天(命令行)
linux·运维·chrome
wuk9984 小时前
基于MATLAB编制的锂离子电池伪二维模型
linux·windows·github
DuelCode4 小时前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis