前言
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
1.docker images: 查看镜像
查看镜像,后可跟 “| grep 内容”,可根据内容进行筛选。
如:docker images | grep nginx
docker images [OPTIONS] [REPOSITORY[:TAG]]
OPTIONS说明:
1. -a: 列出本地所有的镜像
2. –digests: 显示镜像的摘要信息
3. -f: 显示满足条件的镜像
4. –format: 指定返回值的模板文件
5. –no-trunc: 显示完整的镜像信息
6. -q: 只显示镜像ID
2.docker run: 创建一个新的容器并运行一个命令
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
OPTIONS说明:
1. -d: 后台运行容器,并返回容器ID
2. -i: 以交互模式运行容器,通常与 -t 同时使用
3. -p: 指定端口映射,格式为:主机(宿主)端口:容器端口
4. -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用
5. –name “nginx”: 为容器指定一个名称
6. -h “localhost”: 指定容器的hostname
7. -e spring.profiles.active=“dev”: 设置环境变量
8. –env-file=[]: 从指定文件读环境变量
9. -m :设置容器使用内存最大值
10.–volume /home/data:/etc/data : 绑定一个卷
如:docker run -d -t -p 80:80 -v /home/data:/usr/data --name nginx nginx:latest
3. docker create: 创建一个新的容器但不启动它
docker create containerName
4. docker stop: 停止一个运行的容器
docker stop containerName
5. docker restart: 重启一个容器
docker restart containerName
6. docker start: 启动一个被停止的容器
docker start containerName
7.docker ps : 列出容器
docker ps [OPTIONS]
OPTIONS说明:
1. -a: 显示所有的容器,包括未运行的
2. -f: 根据条件过滤显示的内容
3. –format: 指定返回值的模板文件
4. -l: 显示最近创建的容器
5. -n: 列出最近创建的n个容器
6. –no-trunc: 不截断输出
7. -q: 静默模式,只显示容器编号
8. -s: 显示总的文件大小
8.docker ps: 查看容器
1. docker ps -a :查看所有容器
2. docker ps: 查看正在运行的容器
9.docker exec: 进入一个运行中的容器执行命令
docker exec -it 容器id sh or bash or /bin/bash
10.docker rm: 删除一个容器
1. -f : 表示强制
2. -v : 并删除挂载卷
3. 删除所有停止的容器 : docker rm $(docker ps -a -q)
11.docker rmi: 删除一个镜像,
1. -f : 表示强制
12.docker inspect : 获取容器/镜像的元数据
如:docker inspect [OPTIONS] NAME|ID [NAME|ID...]
OPTIONS说明:
1. -f: 指定返回值的模板文件
2. -s: 显示总文件大小
3. -type: 为指定类型返回json数据
获取正在运行的容器 nginx 的 IP:
docker inspect --format='{{range .NetworkSettings.Networks}} {{.IPAddress}}{{end}}' nginx
13.docker kill: 杀死一个运行中的容器
docker kill -s killyou nginx
14.docker logs: 获取容器的日志
docker logs -f -t 容器id or docker logs -f -t --tail=100 容器id
15.docker build: 命令用于使用 Dockerfile 创建镜像
docker build [OPTIONS] PATH | URL | -
OPTIONS说明:
1. -f: 指定要使用的Dockerfile路径
2. -m: 设置内存最大值
3. –memory-swap: 设置Swap的最大值为内存+swap,"-1"表示不限swap
4. –no-cache: 创建镜像的过程不使用缓存
5. –pull: 尝试去更新镜像的新版本
6. -q: 安静模式,成功后只输出镜像 ID
7. –rm: 设置镜像成功后删除中间容器
8. –shm-size: 设置/dev/shm的大小,默认值是64M
9. –tag: 镜像的名字及标签,通常 name:tag 或者 name 格式;可以在一次构建中为一个镜像设置多个标签
10.–network: 默认 default。在构建期间设置RUN指令的网络模式
docker build -t 镜像标签名 .: docker build -t nginx:latest .
docker build -f /path/to/a/Dockerfile .
16.docker tag: 标记本地镜像,将其归入某一仓库
docker tag nginx nginx:old
17.docker save: 将指定镜像保存成 tar 归档文件
docker save -o nginx.tar nginx:latest
18.docker load: 导入使用 docker save 命令导出的镜像
docker load -i tar文件名
19.docker info: 查看docker环境信息
20.docker version: 查看docker版本信息
21.docker login: 登录一个Docker镜像仓库
docker login -u 用户名 -p 密码
22.docker logout: 退出登录
23.docker pull: 拉取或者更新指定镜像
1. -a 拉取所有的tag的镜像
24.docker push: 将本地的镜像上传到镜像仓库
25.docker search :搜索镜像
docker search nginx