Docker 常用指令
MarkLin 2021-01-24 Docker
# Docker 常用指令
功能 | 命令 |
---|---|
拉取镜像 | docker pull [镜像名称:版本] |
镜像列表 | docker images |
删除镜像 | docker rmi[镜像名称:版本] |
镜像操作记录 | docker history [镜像名称:版本] |
给镜像设置新的仓库 | docker tag [镜像名称:版本] [新镜像名称:新版本] |
查看镜像详细 | docker inspect [镜像名称:版本] |
搜索镜像 | docker search [关键字] |
仓库登录 | docker login |
# 容器操作
功能 | 命令 |
---|---|
启动容器并进入 | docker run -ti --name [容器名称] [镜像名称:版本] bash |
容器列表 | docker ps -a |
容器提交为新的镜像 | docker commit [容器名称] my_image:v1.0 |
容器后台运行 | docker run -d --name [容器名称] [镜像名称:版本] bash -c "echo hello world" |
容器结束后自动删除 | docker run --rm --name [容器名称] [镜像名称:版本] bash -c "echo hello world" |
删除容器 | docker rm [容器名称] |
进入容器 exec | docker exec -ti [容器名称] bash |
进入容器 attach | docker attach [容器名称] |
停止容器 | docker stop [容器名称] |
Docker 日志 | docker logs [容器名称] |
查看容器详细 | docker inspect [容器名称] |
查看容器最近一个进程 | docker top [容器名称] |
docker top [容器名称] | docker restart [容器名称] |
暂停一个容器进程 | docker pause [容器名称] |
取消暂停 | docker unpause [容器名称] |
终止容器 | docker kill [容器名称] |
端口映射 | docker run -ti --name [容器名称] -p 8080:80 [镜像名称:版本] bash |
# 内存限制
参数 | 简介 |
---|---|
-m, - -memory | 内存限制,格式:数字+单位,单位可以是 b, k, m, g,最小 4M |
# CPU 限制
参数 | 简介 |
---|---|
-- -cpuset-cpus="" | 允许使用的 CPU 集 |
-c,- -cpu-shares=0 | CPU 共享权值 |
# dockerfile 指令
命令 | 说明 | 示例 |
---|---|---|
FROM | 基于这个 Image 开始 | FROM nginx:latest |
ENV | 环境变量 | ENV localfile /usr/local/nginx |
RUN | 新层中执行命令 | RUN /bin/bash -c 'source HOME |
LABEL | 设置 metadata | LABEL version="1.0" |
MAINTAINER | 维护者 (deprecated) | maintainer="admin@163.com" |
EXPOSE | 声明容器监听端口 | EXPOSE 80 443 |
ADD | 添加文件 | ADD ./dist ${foo}/html |
COPY | 复制文件 | COPY ./dist ${foo}/html |
ENTRYPOINT | 容器启动时执行指令 | |
CMD | 容器启动时执行指令默认值 | CMD ["-la"] |
WORKDIR | 设置工作目录 | WORKDIR /path/to/workdir |
VOLUME | 挂载点 | VOLUME ["/data"] |
USER | 指定操作用户 | USER www |