Docker学习(二)——Docker容器使用
Docker容器使用
1、Docker客户端
命令docker可以查看到Docker客户端的所有命令选项。
命令docker command --help更深入的了解指定的Docker命令使用方法。
2、容器使用
(1)获取镜像:docker pull 镜像
如果我们本地没有ubuntu镜像,我们可以使用docker pull命令来载入ubuntu镜像:docker pull ubuntu
(2)创建并运行容器:docker run 镜像
使用ubuntu镜像启动一个容器,参数为以命令行模式进入该容器:docker run -it ubuntu /bin/bash
参数说明:
-i: 交互式操作。
-t: 终端。
ubuntu: ubuntu 镜像。
/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。
要退出终端,直接输入exit
(3)后台运行容器:docker run -d 镜像
docker run -itd --name ubuntu-test ubuntu /bin/bash
注:进入容器:在使用 -d 参数时,容器启动后会进入后台。此时想要进入容器使用以下指令:
docker attach 容器ID
docker exec 容器ID:推荐使用 docker exec命令,因为此退出容器终端,不会导致容器的停止。
如:docker exec -it 243c32535da7 /bin/bash
(4)启停容器
查看所有的容器命令:docker ps -a
查看所有容器状态:docker status -a
启动一个已停止的容器:docker start 容器ID
停止一个容器:docker stop 容器ID
重启一个容器:docker restart 容器ID
(5)导入导出容器
导出容器:docker export 容器ID > 容器快照文件
如docker export 1e560fca3906 > ubuntu.tar
导入容器:docker import 容器快照文件 - 镜像
可以使用 docker import从容器快照文件中再导入为镜像,以下实例将快照文件ubuntu.tar导入到镜像 test/ubuntu:v1:
cat docker/ubuntu.tar | docker import - test/ubuntu:v1
也可以通过指定URL或者某个目录来导入:
docker import http://example.com/exampleimage.tgz example/imagerepo
(6)删除容器
删除一个容器:docker rm -f 容器ID
(7)清理掉所有处于终止状态的容器
清理掉所有处于终止状态的容器:docker container prune
3、扩展
(1)运行一个web应用:docker run -P 镜像
如:
docker pull training/webapp # 载入镜像
docker run -d -P training/webapp python app.py
docker run -d -p 5000:5000 training/webapp python app.py
参数说明:
-d:让容器在后台运行。
-P:将容器内部使用的网络端口随机映射到我们使用的主机上。
-p:指定端口映射
(2)查看WEB应用容器 docker ps
(3)网络端口的快捷方式:docker port 容器ID或容器名字
通过docker ps命令可以查看到容器的端口映射,docker还提供了另一个快捷方式docker port,使用docker port可以查看指定(ID 或者名字)容器的某个确定端口映射到宿主机的端口号。
(4)查看WEB应用程序日志:docker log 容器ID或容器名字
docker logs -f bf08b7f2cd89
参数说明:
-f: 让 docker logs 像使用 tail -f 一样来输出容器内部的标准输出。
(5)查看WEB应用程序容器的进程:docker top 容器ID或容器名字
可以使用docker top来查看容器内部运行的进程:docker top wizardly_chandrasekhar
(6)检查WEB应用程序:docker inspect 容器ID或容器名字
使用docker inspect来查看Docker的底层信息。它会返回一个JSON文件记录着Docker容器的配置和状态信息。
docker inspect wizardly_chandrasekhar
(7)停止WEB应用容器:docker stop 容器ID或容器名字
(8)启动WEB应用容器:docker start 容器ID或容器名字
(9)重启WEB应用容器:docker restart 容器ID或容器名字
(10)移除WEB应用容器:docker rm 容器ID或容器名字
Docker学习(二)——Docker容器使用的更多相关文章
- Docker学习之Docker容器基本使用
Docker学习之Docker容器基本使用 新建容器并启动 命令格式:docker run --options repository:tag 后台运行 命令格式:-d 已存在的容器相关操作 启动:do ...
- AspNetCore容器化(Docker)部署(二) —— 多容器通信
一.前言 着上一篇 AspNetCore容器化(Docker)部署(一) —— 入门,在单个容器helloworld的基础上引入nginx反向代理服务器组成多容器应用. 二.配置反向代理转接 配置转接 ...
- Docker学习笔记 — Docker私有仓库搭建
Docker学习笔记 — Docker私有仓库搭建 目录(?)[-] 环境准备 搭建私有仓库 测试 管理仓库中的镜像 查询 删除 Registry V2 和Mavan的管理一样,Dockers ...
- Docker学习之Docker镜像基本使用
Docker学习之Docker镜像基本使用 获取镜像 命令格式:docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签] 例如: docker pull ...
- Docker学习笔记 - Docker容器内部署redis
Docker学习笔记(2-4)Docker应用实验-redist server 和client的安装使用 一.获取redis容器(含客户端和服务端) 二.创建服务端容器 1.在终端A中运行redis- ...
- Docker学习笔记 - Docker容器之间的连接
学习目标: 容器之间可以相互连接访问:: --link redis:redisAlias 准备工作 FROM ubuntu:14.04 RUN apt-get install -y ping RUN ...
- Docker学习笔记 - Docker的数据卷容器
一.什么是数据卷容器 如果你有一些持续更新的数据需要在容器之间共享,最好创建数据卷容器. 数据卷容器:用于容器间的数据共享,主动挂载宿主机目录,用于其他容器挂载和共享. 二.数据卷容器的操作 1.创建 ...
- Docker实践(二):容器的管理(创建、查看、启动、终止、删除)
docker官方文档地址如下:[https://docs.docker.com/engine/reference/](https://docs.docker.com/engine/reference/ ...
- DOCKER学习_002:Docker的容器管理
一 Docker的基本信息 前面已经安装了Docker,现在看一下已安装Docker的安装环境以及其他信息 1.1 系统环境 [root@docker-server3 ~]# uname -r -.e ...
- Docker学习之3——容器
容器(Container) 容器介绍: docker是通过容器来运行业务的,就像运行一个kvm虚拟机是一样的.容器其实就是从镜像创建的一个实例. 我们可以对容器进行增删改查,容器之间也是相互隔离的.和 ...
随机推荐
- 记录 mysql 使用时遇到的问题
1,linux平台上mysqld和mysql的区别. 首先,mysql数据库是标准的c/s架构,yum安装时注意到了,有mysql和mysql-server包 mysql是客户端的工具,mysqld ...
- RocketMQ Consumer 启动时都干了些啥?
可能我们对 RocketMQ 的消费者认知乍一想很简单,就是一个拿来消费消息的客户端而已,你只需要指定对应的 Topic 和 ConsumerGroup,剩下的就是只需要: 接收消息 处理消息 就完事 ...
- python基本数据类型操作
str 字符串 #1.进行字符串转换 首字母转换成大写 # name = 'wangjianhui' # v = name.capitalize() # print(v) #2. 字符转换小写 # n ...
- Maven 问题 Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom:3.0.0-M1 的处理
一.问题描述 Maven项目报错,该项目是导入的项目,然后再通过开发工具打开项目时,pom.xml文件报错. 并且新建Maven Project 也会报错. 二.报错详细Failure to tran ...
- 元素显示模式:块元素 & 行内元素 & 行内块元素
元素显示模式 前言 了解元素的显示模式可以更好的让我们布局页面.了解显示模式需要学习以下三个方面 什么是元素的显示模式 元素显示模式的分类 元素显示模式的转换 什么是元素显示模式 元素显示模式就是元素 ...
- 关于JDBC中查询方法的抽取
萌新的JAVA学习笔记[1] 先来张伊蕾娜镇场~~ 简单描述 起初我们的查询方法时分为单个查询和全部查询,过于局限与繁琐,如此一来我们能不能想一个办法将所有类型的查询抽取出来并整合成为一个单独的工具方 ...
- 菜鸡的Java笔记 第十一 - java 封装性
1.1封装的基础实现. 封装是把过程和数据包围起来,对数据的访问只能通过已定义的接口.面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治.封装的对象,这些对象通过一个受保 ...
- linux python2.6.6升级到python2.7
升级 python 2.6.6 系统到 2.7.10 版本 CentOS 6 系统默认 Python 版本是:2.6.6 平时在使用中遇到很多的库要求是 2.7.x 版本的库,比如使用 ConfigP ...
- 【JVM】JVM 概述、内存结构、溢出、调优(基础结构+StringTable+Unsafe+ByteBuffer)
什么是 JVM ? 定义 Java Virtual Machine - java 程序的运行环境(java 二进制字节码的运行环境) 好处 一次编写,到处运行 自动内存管理,垃圾回收功能 数组下标越界 ...
- final关键字、抽象类、抽象类和接口的区别
1.final关键字 1.1.final修饰的类无法继承. 1.2.final修饰的方法无法覆盖. 1.3.final修饰的变量只能赋一次值. 1.4.final修饰的引用一旦指向某个对象,则不能再重 ...