ubuntu24.04安装docker

1、docker官网

Docker: Accelerated Container Application Developmenthttps://www.docker.com/

2、官网安装步骤

参考官网安装步骤:

我会把安装使用到的命令语句在下方展示

3、安装命令

以下都要通过终端命令操作

3.1、卸载老版本docker

为避免版本冲突,卸载之前版本docker,如果新装系统也可以运行此命令

arduino 复制代码
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

3.2、使用apt仓库安装

首次在新主机安装 Docker Engine 时,需要设置docker apt存储库,之后在存储库安装和更新docker

依次运行以下命令

3.2.1、添加docker官方GPG秘钥

sql 复制代码
sudo apt-get update
arduino 复制代码
sudo apt-get install ca-certificates curl
bash 复制代码
sudo install -m 0755 -d /etc/apt/keyrings
bash 复制代码
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
bash 复制代码
sudo chmod a+r /etc/apt/keyrings/docker.asc

3.2.2、将仓库添加到apt源

bash 复制代码
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sql 复制代码
sudo apt-get update

3.2.3、安装docker包

建议安装最新版本

​编辑

arduino 复制代码
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

3.2.4、通过运行hello-word镜像来验证安装是否成功

arduino 复制代码
sudo docker run hello-world

出现Hello from Docker! 即安装成功

查看docker版本号:

复制代码
sudo docker version

4、安装时问题解决

4.1、docker无法安装

使用root用户运行以下命令一键安装(亲测有效)

大佬封装脚本,按自己需要选择

详情参考:linuxmirrors.cn/

less 复制代码
bash <(curl -sSL https://linuxmirrors.cn/main.sh)

4.2、无法拉取hello-word镜像

网络问题,科学上网或更换镜像源

以下提供更换镜像源方法:

bash 复制代码
sudo nano /etc/docker/daemon.json

把代码粘贴进去保存退出

json 复制代码
{

"registry-mirrors": [

"https://do.nark.eu.org",

"https://dc.j8.work",

"https://docker.m.daocloud.io",

"https://dockerproxy.com",

"https://docker.mirrors.ustc.edu.cn",

"https://docker.nju.edu.cn"

]

}

依次执行以下命令

复制代码
sudo systemctl daemon-reload

sudo systemctl restart docker
arduino 复制代码
sudo docker run hello-world

应该就可以成功

其他问题没遇到,道友可以发出交流

5、将当前用户添加到 docker 用户组

目的是取消每次在使用docker命令时前面需要加sudo

添加当前用户到 docker 组

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

立即生效(无需重新登录)

复制代码
newgrp docker

验证 应显示包含 "docker" 组

bash 复制代码
groups

之后执行docker命令看看是否成功

css 复制代码
docker ps -a

6、启动Portainer镜像

Portainer 是 docker 的轻量级 UI 管理器,可用于管理不同的 docker 环境,例如 docker 主机或 docker swarm 集群。 Portainer 在单个容器中运行并支持任何 Docker 引擎,包括 Linux 容器或 Windows 原生容器和其他平台。 它可以轻松管理我们所有的 Docker 资源,例如容器、镜像、卷、网络等。

详情参考:Install Portainer BE with Docker on Linux | Portainer Documentationhttps://docs.portainer.io/start/install/server/docker/linux

首先,创建 Portainer Server 将用于存储其数据库的卷:

lua 复制代码
docker volume create portainer_data

然后,下载并安装 Portainer Server 容器:

javascript 复制代码
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:lts

可以通过运行 来检查 Portainer Server 容器是否已启动:

复制代码
docker ps
bash 复制代码
CONTAINER ID   IMAGE                          COMMAND                  CREATED       STATUS      PORTS                                                                                  NAMES             
de5b28eb2fa9   portainer/portainer-ee:lts     "/portainer"             2 weeks ago   Up 9 days   0.0.0.0:8000->8000/tcp, :::8000->8000/tcp, 0.0.0.0:9443->9443/tcp, :::9443->9443/tcp   portainer

浏览器访问:如果您之前更改了端口,请调整端口
https://localhost:9443

初始化设置:

开始快乐的使用吧!!!

7、docker compose的使用

查看docker compose版本号:

复制代码
docker compose version

以下我们通过docker compose部署一款开源系统。

7.1、homebox简介

sysadminsmedia/homebox是一个专为家庭用户设计的自托管库存管理系统,旨在帮助用户轻松跟踪和管理家中的所有设备。

建立文件夹homebox

在homebox 建立docker-compose.yml文件

7.2、编写docker-compose.yml

ini 复制代码
version: "3"
services:  
    homebox:    
        image: ghcr.io/sysadminsmedia/homebox:latest    
        container_name: homebox    
        restart: always    
        environment:     
            - HBOX_LOG_LEVEL=info      
            - HBOX_LOG_FORMAT=text      
            - HBOX_WEB_MAX_UPLOAD_SIZE=10	  
            - HBOX_OPTIONS_ALLOW_ANALYTICS=false    
        volumes:      
            - /share/Container/homebox-data:/data/    
        ports:      
            - 3100:7745

进入homebox文件运行以下命令启动服务:

复制代码
docker compose up -d

服务启动后,在浏览器访问http://IP:3100即可。

7.3、docker compose和docker-compose区别

Docker Compose 新旧版本(V1 docker-compose 与 V2 docker compose

1. 本质区别

  • 旧版 (V1) :独立的 Python 工具(docker-compose 命令),需单独安装,依赖 Python 环境。
  • 新版 (V2) :Docker 官方内置的 Go 语言插件(docker compose 命令),无需额外依赖,性能更高。

2. 关键改进

  • 性能:新版启动速度更快,资源占用更低,尤其适合复杂项目。
  • 功能:新增多平台构建(ARM/AMD)、GPU 支持、服务分组(Profiles)等特性。
  • 兼容性 :完全兼容旧版配置文件,同时支持扩展字段(如 x-* 自定义配置)。

3. 使用变化

  • 命令格式 :从带横线的 docker-compose 变为子命令 docker compose
  • 环境管理 :新版需显式指定环境变量文件(--env-file),更清晰但稍繁琐。
  • 云集成:深度适配 Docker Desktop 和云服务(如 AWS ECS)。

4. 迁移建议

  • 新项目:直接使用新版,享受更好的性能和功能。
  • 旧项目:可逐步替换命令,配置文件通常无需修改。
  • 生产环境 :推荐 V2 + Compose 文件 v3.8+ 版本,搭配 profiles 等新特性优化部署。

5. 注意点

  • 旧版已停止维护,未来功能更新仅限新版。
  • 新版对 Windows 路径和网络驱动的支持更友好。

相关推荐
小兔子酱#4 小时前
【Docker 07】Network - 网络
网络·docker·php
微信公众号:AI创造财富9 小时前
run docker 失败解决办法
python·docker
Fireworkitte9 小时前
Dockerfile 和 docker-compose.yml
运维·docker·容器
Mr-Apple13 小时前
Docker搭建RabbitMQ集群环境
docker·容器·rabbitmq
白日依山尽yy14 小时前
docker|redis的面试题——七道
redis·docker·容器
David爱编程15 小时前
容器日志管理与集中收集实战指南:搭建你的日志可观测体系!
后端·docker·容器
Riu_Peter1 天前
【技术】记一次 Docker 中的 ES 数据迁移,使用 Reindex API
elasticsearch·docker·容器
lishaoan771 天前
TensorFlow环境搭建之Docker Image
docker·tensorflow
计算机小手1 天前
Docker 快速搭建一个基于 GPT-Vis 组件的统计图表生成服务
经验分享·docker·开源软件