docker运行Ubuntu22.04

1、拉取docker

bash 复制代码
# 拉取最新版Ubuntu
docker pull ubuntu

# 拉取指定版本(例如22.04)
docker pull ubuntu:22.04

2、运行 Ubuntu 容器

拉取镜像后,可以通过docker run命令启动 Ubuntu 容器:

交互式运行(进入容器终端)

如果需要直接进入 Ubuntu 容器的终端交互(常用场景):

bash

复制代码
# -it:交互式终端;--name:给容器命名;/bin/bash:启动bash终端
docker run -it --name ubuntu -p 19914:19914 ubuntu /bin/bash

执行后会直接进入容器内部的bash终端,此时可以像在本地 Ubuntu 系统中一样执行命令(如ls、apt update等)。

后台运行容器

如果需要让容器在后台运行(不直接进入终端):

bash

复制代码
# -d:后台运行;--name:容器名称
docker run -d --name ubuntu -p 19914:19914 ubuntu:22.04 sleep infinity

后续可以通过docker exec进入后台运行的容器(见步骤 3)。

3. 进入已运行的 Ubuntu 容器

如果容器已在后台运行,可通过docker exec命令进入其终端:

bash

复制代码
# -it:交互式终端;my-ubuntu-bg:容器名称;/bin/bash:启动bash
docker exec -it ubuntu /bin/bash

4. 容器内基本操作

进入 Ubuntu 容器后,可以执行常规 Linux 命令:

bash

复制代码
# 更新包索引
apt update

# 安装软件(例如安装vim)
apt install -y vim

apt install -y wget

apt install -y curl

# 查看系统信息
cat /etc/os-release

5. 容器与主机文件共享

如果需要在容器和本地主机之间共享文件,可以通过-v参数挂载目录:

bash

复制代码
# 将本地当前目录($(pwd))挂载到容器的/mnt目录
docker run -it -v $(pwd):/mnt --name my-ubuntu-mount ubuntu /bin/bash

此时在容器内/mnt目录下的操作,会同步到本地主机的当前目录。

6. 保存容器修改为新镜像

如果对容器做了自定义配置(如安装了软件),可以将其保存为新镜像,方便后续复用:

bash

复制代码
# docker commit [容器名称/ID] [新镜像名称:标签]
docker commit my-ubuntu my-custom-ubuntu:v1

7. 停止和删除容器

bash

复制代码
# 停止容器
docker stop my-ubuntu

# 启动已停止的容器
docker start my-ubuntu

# 删除容器(需先停止)
docker rm my-ubuntu

# 强制删除运行中的容器
docker rm -f my-ubuntu

8. 删除 Ubuntu 镜像

如果需要清理镜像:

bash

复制代码
# 删除指定镜像(需先删除依赖该镜像的容器)
docker rmi ubuntu:22.04

通过以上操作,你可以在 Docker 中灵活使用 Ubuntu 环境,适合开发、测试等场景,无需在本地安装完整的 Ubuntu 系统。

相关推荐
程序员清风8 小时前
Docker、Nginx 与 Kubernetes 部署 AI 后端服务
nginx·docker·kubernetes
谢亮_vipxieliang10 小时前
镜像安全:扫描、签名与软件供应链
安全·docker
天衍四九-11 小时前
Docker容器实战系列(八):Docker生产最佳实践与避坑指南,系列终章
运维·docker·容器
Zhou14113613 小时前
Docker_03_DockerCompose多容器编排
运维·docker·容器
啊哈一半醒14 小时前
Docker 底层知识:从 Namespace 到 UnionFS
运维·docker·容器
fruge17 小时前
飞牛OS部署Flare导航页:Docker Compose、YAML书签配置与cpolar公网访问
运维·docker·容器
Zhou14113617 小时前
Docker_02_Dockerfile与存储网络
网络·docker·容器
谢亮_vipxieliang1 天前
一套 Compose 搭起完整开发环境:MySQL + Redis + Nginx
redis·mysql·nginx·docker
江湖有缘1 天前
Docker实战 | 使用Docker部署Bibliotheca阅读习惯管理工具
java·docker·容器
万联WANFLOW1 天前
Docker Hub 镜像拉取慢、timeout 的排查方法
运维·docker·云原生·容器·eureka