[Ubuntu 22.04] Docker安装及使用

[Ubuntu 22.04] Docker安装及使用

一、Docker安装

使用脚本自动安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

安装完成后验证

docker version

二、Docker使用

1. 拉取镜像并启动容器

$ docker pull -h
Flag shorthand -h has been deprecated, please use --help

Usage:  docker pull [OPTIONS] NAME[:TAG|@DIGEST]

Download an image from a registry

Aliases:
  docker image pull, docker pull

Options:
  -a, --all-tags                Download all tagged images in the repository
      --disable-content-trust   Skip image verification (default true)
      --platform string         Set platform if server is multi-platform capable
  -q, --quiet                   Suppress verbose output

:OPTION是参数,TAG是标签(版本号)

以Ubuntu 20.04为例,如下:

$ sudo docker pull ubuntu:20.04
20.04: Pulling from library/ubuntu
ca1778b69356: Pull complete 
Digest: sha256:db8bf6f4fb351aa7a26e27ba2686cf35a6a409f65603e59d4c203e58387dc6b3
Status: Downloaded newer image for ubuntu:20.04
docker.io/library/ubuntu:20.04

$ sudo docker image ls
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
ubuntu       20.04     88bd68917189   6 weeks ago   72.8MB

2. 创建容器

镜像拉取完成后,可以使用以下命令创建并启动一个基于 Ubuntu 20.04 镜像的容器

docker run -it ubuntu:20.04

这将创建一个交互式的终端会话,可以在 Ubuntu 20.04 容器内执行命令。可以通过输入exit或使用快捷键Ctrl+D退出该终端。

:在 docker run 命令中,-i-t 是两个选项,用于与容器的标准输入(stdin)和终端(TTY)进行交互。它们的具体含义如下:

  • -i:表示保持标准输入打开。通过使用这个选项,可以将你的终端输入连接到容器的标准输入,从而能够向容器发送输入。
  • -t:表示为容器分配一个伪终端(pseudo-TTY)。使用这个选项,你可以获得一个类似终端的交互式会话,使你能够与容器进行命令行交互。

综合来看,-it 选项允许你在容器内部创建一个交互式的终端会话,使你可以像在本地终端一样与容器进行交互。你可以在容器内执行命令,查看输出并输入命令。

添加--rm参数可以在docker容器实例运行结束后自动删除容器、释放资源。

docker run  -it --rm ubuntu:20.04

3. 启动容器

默认情况下,Docker 容器在停止后不会自动删除。容器的生命周期由用户控制,用户可以选择手动删除容器或让其保留在系统中以供之后使用。

列出所有正在运行的容器,并显示它们的容器ID、镜像、命令、创建时间、状态等信息。

docker ps

查看已停止的容器,可以添加 -a 参数。这将显示所有容器的列表,包括正在运行的和已停止的容器。

docker ps -a

根据容器的ID或名称,可以使用以下命令重新启动容器:

docker start 

然后,使用以下命令进入容器的终端:

docker exec -it  /bin/bash

以下命令可以中止容器,改命令将向容器发送一个停止信号,使其正常停止并退出。

docker stop 

如果想立即中止容器而不等待它正常停止,可以使用 docker kill 命令:

docker kill 

你可能感兴趣的:(docker,ubuntu,linux)