侧边栏壁纸
博主头像
月明星稀

无心而为

  • 累计撰写 4 篇文章
  • 累计创建 14 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

docker安装和使用

月明星稀
2025-02-04 / 0 评论 / 0 点赞 / 29 阅读 / 0 字

image-xunw.png

1. 安装

docker官网安装文档(ubuntu):

https://docs.docker.com/engine/install/ubuntu/

在您安装 Docker Engine 之前,您需要卸载任何冲突的软件包。

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

在您首次在新主机机器上安装 Docker Engine 之前,您需要设置 Docker apt 仓库。之后,您可以从仓库安装和更新 Docker。

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
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
sudo apt-get update

安装 Docker 软件包,这里面包括了docker compose

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

验证安装

sudo docker run hello-world

成功打印hello world就说明成功了。

2. 基础操作

拉取镜像

docker pull [image]:[tag]

查看镜像

docker images

删除镜像

docker rmi [image]:[tag]  # 通过名字和tag删除
docker rmi [image_id]  # 通过id删除(只输ID前三个字符也行)

运行容器

docker run [images]:[tag]

run常用参数

选项

说明

-d--detach

后台运行容器(守护进程模式)。

--name <名称>

为容器指定一个名称(默认随机生成)。

-p <宿主机端口>:<容器端口>

将容器的端口映射到宿主机的端口(端口绑定)。

-v <宿主机目录>:<容器目录>

挂载宿主机目录到容器(数据卷绑定)。

-e <环境变量名>=<值>

设置容器的环境变量。

--rm

容器停止后自动删除(适合临时测试)。

-it

以交互模式运行容器(通常与 /bin/bash 结合使用)。

--network <网络>

指定容器使用的网络(如 bridge, host, none 或自定义网络)。

--restart <策略>

设置容器的重启策略(如 no, on-failure, always)。

--memory <限制>

限制容器使用的内存(如 --memory 512m)。

--cpu-shares <权重>

设置 CPU 资源分配的权重(默认 1024)。

查看容器

docker ps -a

重启、启动、停止、删除容器

docker restart [container]  # 重启
docker start [container]  # 启动
docker stop [container]  # 停止
docker rm [container]  #删除

3. 其它操作

docker镜像(image)更改tag

docker tag <image>:<tag> <new_image>:<new_tag>

new_image改成一个docker hub url,可以push到这个docker hub,push一般需要先认证login。

docker修改默认用户

一般有的容器镜像DockerFile限制了用户不能是root,在进入容器后遇到很多限制,十分棘手,迫切需要root权限。通过

docker commit --change="USER root" <container_id> <image>:<tag>

将容器打包成一个新的镜像,里面默认用户就是root!

如果是将镜像重新打包的话,需要先写一个Dockerfile:

FROM <existing_image>:<tag>
USER root

然后在Dockerfile的目录下执行:

docker build -t <new_image>:<tag> .

docker指定gpu:

docker run --gpus '"device=0,1"' <image_name>  # 前两个GPU
docker run --gpus '"device=all"' <image_name>  # 所有GPU

0

评论区