run 从映像创建并运行新容器
$ docker run -it -v $(pwd):/home/zhangsan --name ohos ubuntu:20.04
说明:命令表示创建一个名为ohos,系统镜像为ubuntu 20.04的容器;这个容器运行在交互模式下,并且将当前目录映射
到容器的/home/zhangsan目录。
exec 在运行中的容器中执行命令
#以root用户运行容器
$ docker exec --user root -it ohos bash
ps 列出容器
$ docker ps #等效于docker container ls, docker container list, docker container ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ab7d67807966 ubuntu:20.04 "/bin/bash" 4 days ago Up 4 days ohos
命令 | 参数 | 说明 |
---|---|---|
ps | -a | 显示所有容器 |
-f | 根据条件过滤容器 | |
-n | 显示最近创建的n个容器 | |
-1 | 显示最近创建的1个容器 | |
-q | 仅显示容器ID | |
-s | 显示总文件数 |
build 从 Dockerfile 中构建镜像
#以当前目录从Dockerfile构建tag为oh_standard:32的镜像
$ docker build -t oh_standard:3.2 .
pull 从镜像仓库拉取镜像
$ docker pull ubuntu:20.04
push 将镜像推至镜像仓库
images 列出本地所有镜像
$ docker images 等同与 docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 20.04 f78909c2b360 8 days ago 72.8MB
swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_standard 3.2 ae33c06f45c5 6 months ago 5.3GB
login 登录仓库
logout 注销仓库登录
search 搜索 Docker Hub 中的镜像
version 显示 Docker 版本信息
$ docker version
Client:
Version: 24.0.5
API version: 1.43
Go version: go1.20.3
Git commit: 24.0.5-0ubuntu1~20.04.1
Built: Mon Aug 21 19:50:14 2023
OS/Arch: linux/amd64
Context: default
Server:
Engine:
Version: 24.0.5
API version: 1.43 (minimum version 1.12)
Go version: go1.20.3
Git commit: 24.0.5-0ubuntu1~20.04.1
Built: Mon Aug 21 19:50:14 2023
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.7.2
GitCommit:
runc:
Version: 1.1.7-0ubuntu1~20.04.1
GitCommit:
docker-init:
Version: 0.19.0
GitCommit:
info 显示全系统信息
$ docker info
Client:
Version: 24.0.5
Context: default
Debug Mode: false
Server:
Containers: 9
Running: 2
Paused: 0
Stopped: 7
Images: 2
Server Version: 24.0.5
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Using metacopy: false
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: cgroupfs
Cgroup Version: 1
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: io.containerd.runc.v2 runc
Default Runtime: runc
Init Binary: docker-init
containerd version:
runc version:
init version:
Security Options:
apparmor
seccomp
Profile: builtin
Kernel Version: 5.4.0-169-generic
Operating System: Ubuntu 20.04.6 LTS
OSType: linux
Architecture: x86_64
CPUs: 64
Total Memory: 125.5GiB
Name: ptyf-server2
ID: d3a50ae3-6496-463c-b11d-e7d9173ad184
Docker Root Dir: /var/lib/docker
Debug Mode: false
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
WARNING: No swap limit support
builder 管理构建
container 管理容器
#列出所有容器
$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4ca94429b5e1 ubuntu:20.04 "/bin/bash" 4 days ago Up 4 days ohos40r
ab7d67807966 ubuntu:20.04 "/bin/bash" 4 days ago Up 4 days ohos
#强制删除ID为4ca94429b5e1的容器
$ docker container rm -f 4ca94429b5e1
4ca94429b5e1
---
命令 | 参数 | 说明 |
---|---|---|
container | attach | 为运行中的容器附加本地标准输入、输出和错误流 |
commit | 根据容器的更改创建新镜像 | |
cp | 在容器和本地文件系统之间复制文件/文件夹 | |
create | 创建新容器 | |
diff | 检查容器文件系统中文件或目录的更改 | |
exec | 在运行的容器中执行命令 | |
export | 将容器的文件系统导出为 tar 压缩文件 | |
inspect | 显示一个或多个容器的详细信息 | |
kill | 关闭一个或多个正在运行的容器 | |
logs | 抓取容器的日志 | |
ls | 列出容器 | |
pause | 暂停一个或多个容器内的所有进程 | |
port | 列出容器的端口映射或特定映射 | |
prune | 删除所有停止的容器 | |
rename | 重命名一个容器 | |
restart | 重启一个或多个容器 | |
rm | 删除一个或多个容器 | |
run | 从映像创建并运行一个新容器 | |
start | 启动一个或多个已停止的容器 | |
stats | 显示容器资源使用统计的实时流 | |
stop | 停止一个或多个正在运行的容器 | |
top | 显示容器的运行进程 | |
unpause | 取消一个或多个容器内的所有进程 | |
update | 更新一个或多个容器的配置 | |
wait | 阻塞直到一个或多个容器停止,然后打印它们的退出代码 |
context 管理上下文
image 管理镜像
manifest 管理 Docker 镜像清单和清单列表
network 管理网络
plugin 管理插件
system 管理Docker
trust 管理Docker授信
volume 管理卷
swarm 管理群
attach 为运行中的容器附加本地标准输入、输出和错误流
commit 根据容器的修改创建新映像
cp 在容器和本地文件系统之间复制文件/文件夹
create 创建新容器
diff 检查容器文件系统中文件或目录的差异
events 从服务器获取实时事件
export 将容器的文件系统导出为 tar 压缩文件
history 显示镜像的历史记录
import 从 tar 包中导入内容以创建文件系统映像
inspect 返回 Docker 对象的底层信息
kill 关闭一个或多个正在运行的容器
load 从 tar 文件或 STDIN 加载镜像
logs 抓取容器的日志
pause 暂停一个或多个容器内的所有进程
port 列出容器的端口映射或特定映射
rename 重命名容器
restart 重启一个或多个容器
rm 删除一个或多个容器
rmi 删除一个或多个镜像
save 将一个或多个图像保存到 tar 存档(默认情况下流到 STDOUT)
start 启动一个或多个已停止的容器
stats 显示实时的容器资源使用统计流
stop 停止一个或多个正在运行的容器
tag 创建指向 SOURCE_IMAGE 的标签 TARGET_IMAGE
top 显示容器的运行进程
unpause 暂停一个或多个容器内的所有进程
update 更新一个或多个容器的配置
wait 阻塞,直到一个或多个容器停止,然后打印它们的退出代码
客户端配置文件的位置(默认为"/home/username/.docker")。
用来连接守护进程的上下文名称(覆盖 DOCKER_HOST 环境变量和使用 "docker context use "设置的默认上下文)。
启用调试模式
连接守护进程套接字
设置日志级别(“debug”、“info”、“warn”、“error”、“fatalal”)(默认为 "info)
使用 TLS;由 --tlsverify 隐含
仅信任由该 CA 签发的证书(默认值为"/home/username/.docker/ca.pem)
TLS 证书文件的路径(默认为"/home/username/.docker/cert.pem)
TLS 密钥文件的路径(默认为"/home/username/.docker/key.pem)
使用 TLS 并进行远程验证
打印版本信息并退出
$ docker -v
Docker version 24.0.5, build 24.0.5-0ubuntu1~20.04.1
$ docker --version
Docker version 24.0.5, build 24.0.5-0ubuntu1~20.04.1