Ubuntu 安装 Docker

  1. 更新系统并安装基础工具
bash 复制代码
sudo apt update
sudo apt install -y ca-certificates curl
  1. 添加 Docker 官方 GPG 密钥
bash 复制代码
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc

赋予读取权限

bash 复制代码
sudo chmod a+r /etc/apt/keyrings/docker.asc
  1. 添加 Docker 的 apt 软件源
bash 复制代码
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
  1. 安装 Docker
bash 复制代码
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  1. 验证安装
bash 复制代码
sudo docker -v

(Ubuntu 下安装的组件比 CentOS 略多,包含了常用的 buildx 和 compose 插件。)

安装完成后如果每次都要打 sudo 觉得麻烦,可以把当前用户加入 docker 组:注意,要在终端输入这条命令,要不然无效,完成后重启虚拟机,指令生效

bash 复制代码
sudo usermod -aG docker $USER

,然后退出重新登录一下。

配置镜像

bash 复制代码
sudo tee /etc/docker/daemon. json <<-'EOF'
> {
  "registry-mirrors": ["https://asmpc6kh.mirror.aliyuncs.com"]
}
> EOF
{
  "registry-mirrors": ["https://asmpc6kh.mirror.aliyuncs.com"]
}

sudo systemctl daemon-reload
sudo systemctl restart docker

进程相关命令

启动docker服务:

systemctl start docker

停止docker服务:

systemctl stop docker

重启docker服务:

systemctl

restart docker

查看docker服务状态:

systemctl status docker

设置开机启动docker服务:

systemctl enable docker

镜像相关命令

(注意,改了中科大的镜像之后,只能pull,不能进行search,如果要search,要去docker官方网站)

容器相关命令

数据卷

数据卷是宿主机中的一个目录或文件

·当容器目录和数据卷目录绑定后,对方的修改会立即同步

·一个数据卷可以被多个容器同时挂载

·一个容器也可以被挂载多个数据卷

数据卷作用

容器数据持久化:

外部机器和容器间接通信,

容器之间数据交换

1.创建启动c3数据卷容器,使用-v参数设置数据卷

docker run -it --name=c3 -v /volume centos:7 /bin/bash

2.创建启动c1c2容器,使用--volumes-from参数设置数据卷

docker run -it --name=c1 --volumes-from c3 centos:7 /bin/bash

docker run -it --name=c2 --volumes-from c3 centos:7 /bin/bash

数据卷小结

1.数据卷概念

宿主机的一个目录或文件

2.数据卷作用

容器数据持久化

客户端和容器数据交换

容器间数据交换

3.数据卷容器

创建一个容器,挂载一个目录,让其他容器继承自该容器(--volume-from)。

通过简单方式实现数据卷配置

相关推荐
todoitbo1 小时前
我在 Mac 上用 Docker 部署 Nexent:从拉取镜像到接入模型
macos·docker·大模型·ai智能体·nexent·快速入门与环境准备
青梅味猪大肠1 小时前
【操作系统-60】临近适应算法
java·linux·开发语言·嵌入式硬件·算法·操作系统
沫璃染墨2 小时前
从零入门计算机网络系列(十四):TCP报文与字节流本质——从数据封装到报文边界
linux·服务器·网络·网络协议·tcp/ip·tcp
Goboy2 小时前
夯爆了,我被一个一句话接入的免费可观测平台策反了,那一刻我决定放弃用了3年的Prometheus
后端·docker·kubernetes
CodeYp20192 小时前
第19讲:自旋锁
linux·自旋锁
此生决int2 小时前
Linux系列(08)——进程控制
linux·运维·驱动开发
Percep_gan3 小时前
Linux中安装gitea,很详细
linux·elasticsearch·gitea
Rabitebla12 小时前
【Linux 底层原理】进程(十):进程等待详解---从僵尸进程到 wait、waitpid 与 status
linux·c++·笔记·学习·visual studio
java_logo12 小时前
Docker 部署 Liquibase:轻松搭建数据库变更管理
数据库·docker·容器·数据库管理·liquibase·轩辕镜像·数据库变更