Docker常用命令
1、查看所有容器 docker ps -a
输出详情介绍:
CONTAINER ID: 容器 ID。 IMAGE: 使用的镜像。 COMMAND: 启动容器时运行的命令。 CREATED: 容器的创建时间。
STATUS: 容器状态。
状态有7种:created(已创建) restarting(重启中) running 或 Up(运行中) removing(迁移中) paused(暂停) exited(停止) dead(死亡)
PORTS: 容器的端口信息和使用的连接类型(tcp\udp)。 NAMES: 自动分配的容器名称。
2、获取镜像 docker pull ubuntu
3、启动容器 docker run -it ubuntu /bin/bash
-i: 交互式操作。 -t: 终端。 ubuntu: ubuntu 镜像。 /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。要退出终端,直接输入 exit
在大部分的场景下,我们希望 docker 的服务是在后台运行的,我们可以过 -d 指定容器的运行模式:docker run -itd --name ubuntu-test ubuntu /bin/bash
我们也可以通过 -p 参数来设置映射容器的端口:docker run -d -p 5000:5000 training/webapp python app.py
4、启动已停止运行的容器 docker start 容器ID
5、停止容器 docker stop 容器ID
6、重启容器 docker restart 容器ID
7、进入容器 docker exec -it 容器ID /bin/bash
8、查看镜像 docker images ,也可以使用 docker search 命令来搜索镜像
9、构建自己的镜像例子
dockerfile的命令摘要
- FROM- 镜像从那里来
- MAINTAINER- 镜像维护者信息
- RUN- 构建镜像执行的命令,每一次RUN都会构建一层
- CMD- 容器启动的命令,如果有多个则以最后一个为准,也可以为ENTRYPOINT提供参数
- VOLUME- 定义数据卷,如果没有定义则使用默认
- USER- 指定后续执行的用户组和用户
- WORKDIR- 切换当前执行的工作目录
- HEALTHCHECH- 健康检测指令
- ARG- 变量属性值,但不在容器内部起作用
- EXPOSE- 暴露端口
- ENV- 变量属性值,容器内部也会起作用
- ADD- 添加文件,如果是压缩文件也解压
- COPY- 添加文件,以复制的形式
- ENTRYPOINT- 容器进入时执行的命令
10、Docker Compose
Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。 Compose 使用的三个步骤:1、使用 Dockerfile 定义应用程序的环境。2、使用 docker-compose.yml 定义构成应用程序的服务,这样它们可以在隔离环境中一起运行。3、最后,执行 docker-compose up 命令来启动并运行整个应用程序。