attach # 当前 shell 下 attach 连接指定运行镜像
exec # 在已存在的容器上运行命令(与attach类似只不过不用进入容器内部操作)
build # 通过 Dockerfile 定制镜像
commit # 提交当前容器为新的镜像 docker commit -m="提交描述" -a="作者" 容器id 目标镜像名:[标签名]
cp #从容器中拷贝指定文件或者目录到宿主机中
create # 创建一个新的容器,同 run,但不启动容器
diff # 查看 docker 容器变化
events # 从 docker 服务获取容器实时事件
export # 导出容器的内容流作为一个 tar 归档文件[对应 import ]
history # 展示一个镜像形成历史
images # 列出系统当前镜像
import # 从tar包中的内容创建一个新的文件系统映像[对应export]
info # 显示系统相关信息
inspect # 查看容器详细信息
kill # kill 指定 docker 容器
load # 从一个 tar 包中加载一个镜像[对应 save]
login # 注册或者登陆一个 docker 源服务器
logout # 从当前 Docker registry 退出
logs # 输出当前容器日志信息
port # 查看映射端口对应的容器内部源端口
pause # 暂停容器
ps # 列出容器列表 -a列出所有(包括已停止) -n显示最近几条创建的容器
pull # 从docker镜像源服务器拉取指定镜像或者库镜像
push # 推送指定镜像或者库镜像至docker源服务器
restart # 重启运行的容器
rm # 移除一个或者多个容器 -f强制删除正在运行中 docker rm -f $(docker ps -aq)删除所有正在运行和已经停止的容器
rmi # 移除一个或多个镜像[无容器使用该镜像才可删除,否则需删除相关容器才可继续或 -f 强制删除] docker rmi -f $(docker images -aq)删除所有系统中的镜像
run # 创建一个新的容器并运行一个命令 -d:后台运行 --name=”新容器名” -i:以交互模式运行容器 -t:为容器分配一个伪终端 -P:随机端口映射 -p:指定端口映射
save # 保存一个镜像为一个 tar 包[对应 load]
search # 在 docker hub 中搜索镜像
start # 启动容器
stop # 停止容器
tag # 给源中镜像打标签
top # 查看容器中运行的进程信息
unpause # 取消暂停容器
version # 查看 docker 版本号
wait # 截取容器停止时的退出状态值
DockerFile
FROM:指定基础镜像,必须为第一个命令
MAINTAINER: 维护者信息
LABEL:用于为镜像添加元数据
ADD:将本地文件添加到容器中,tar类型文件会自动解压(网络压缩资源不会被解压),可以访问网络资源,类似wget
COPY:功能类似ADD,但是是不会自动解压文件,也不能访问网络资源
WORKDIR:工作目录,类似于cd命令
RUN:构建镜像时执行的命令
CMD:构建容器后调用,也就是在容器启动时才进行调用。
ENTRYPOINT:配置容器,使其可执行化。配合CMD可省去"application",只使用参数。
ENV:设置环境变量
EXPOSE:指定于外界交互的端口
VOLUME:用于指定持久化目录
ARG:用于指定传递给构建运行时的变量
USER:指定运行容器时的用户名或 UID,后续的 RUN 也会使用指定用户。使用USER指定用户时,可以使用用户名、UID或GID,或是两者的组合。当服务不需要管理员权限时,可以通过该命令指定运行用户。并且可以在之前创建所需要的用户
ONBUILD:用于设置镜像触发器