Docker入门 - 003 Docker 实例
Docker Hello World
Docker 允许你在容器内运行应用程序, 使用 docker run 命令来在容器内运行一个应用程序。
输出Hello world
runoob@runoob:~$ docker run ubuntu:15.10 /bin/echo "Hello world"
Hello world
各个参数解析:
docker: Docker 的二进制执行文件。
run:与前面的 docker 组合来运行一个容器。
ubuntu:15.10指定要运行的镜像,Docker首先从本地主机上查找镜像是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载公共镜像。
/bin/echo "Hello world": 在启动的容器里执行的命令
以上命令完整的意思可以解释为:Docker 以 ubuntu15.10 镜像创建一个新容器,然后在容器里执行 bin/echo "Hello world",然后输出结果。
运行交互式的容器
我们通过docker的两个参数 -i -t,让docker运行的容器实现"对话"的能力
runoob@runoob:~$ docker run -i -t ubuntu:15.10 /bin/bash #此时我们已进入一个 ubuntu15.10系统的容器
root@dc0050c79503:/#
各个参数解析:
docker: Docker 的二进制执行文件。
- run:与前面的 docker 组合来运行一个容器。
-t:在新容器内指定一个伪终端或终端。
-i:允许你对容器内的标准输入 (STDIN) 进行交互。
- ubuntu:15.10指定要运行的镜像,Docker首先从本地主机上查找镜像是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载公共镜像。
/bin/bash : 在新启动的容器中终端的交互终端为/bin/bash。
我们尝试在容器中运行命令 cat /proc/version和ls分别查看当前系统的版本信息和当前目录下的文件列表(我们可以通过运行exit命令或者使用CTRL+D来退出容器)。
启动容器(后台模式)
使用以下命令创建一个以进程方式运行的容器
[root@VM_16_14_centos ~]# docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"
fff2b97908cc4d0be9b7b026c7444a0ff3e96dc7de026e29001a12648aeec142
各个参数解析:
-d:让新容器在后台运行。
-c:在启动容器时配置参数(如:"while true; do echo hello world; sleep 1; done")。
配置参数说明(正确的写法如下,类似bash脚本):
while true;
do
echo hello world;
sleep ;
done
在输出中,我们没有看到期望的"hello world",而是一串长字符:fff2b97908cc4d0be9b7b026c7444a0ff3e96dc7de026e29001a12648aeec142
这个长字符串叫做容器ID,对每个容器来说都是唯一的,我们可以通过容器ID来查看对应的容器发生了什么。
首先,我们需要确认容器有在运行,可以通过 docker ps 来查看:
[root@VM_16_14_centos ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fff2b97908cc ubuntu:15.10 "/bin/sh -c 'while..." About a minute ago Up About a minute silly_shirley
CONTAINER ID:容器ID
NAMES:自动分配的容器名称
在容器内使用docker logs命令,查看容器内的标准输出
[root@VM_16_14_centos ~]# docker logs fff2b97908cc
hello world
hello world
hello world
hello world
或者:
[root@VM_16_14_centos ~]# docker logs silly_shirley
hello world
hello world
hello world
hello world
停止容器
我们使用 docker stop 命令来停止容器:
docker stop fff2b97908cc
通过docker ps查看,容器已经停止工作:
docker ps
也可以用下面的命令来停止:
docker stop amazing_cori
Docker入门 - 003 Docker 实例的更多相关文章
- 【Docker入门】Docker的常用命令
了解和安装完docker之后,我们学习一下docker的常用命令就和当初学linux命令一样,放心命令其实大致相同只不过细节不同. 一.Docker启动类命令 1.启动docker:syste ...
- Docker入门 - 006 Docker 多种数据库的安装
Docker 安装 MySQL 查找Docker Hub上的mysql镜像 root@VM_16_14_centos ~# docker search mysql INDEX NAME DESCRIP ...
- Docker入门 - 004 Docker 容器使用
Docker 客户端 docker 客户端非常简单 ,我们可以直接输入 docker 命令来查看到 Docker 客户端的所有命令选项. docker 可以通过命令 docker command -- ...
- Docker入门之一Docker在Window下安装
最近这几年,各个大公司都在打造自己的云平台,什么阿里云,华为云,腾讯云等等云,以及各种的微服务架构,其实在这当中Docker容器技术算是一个很重要的角色. 一.下载 在下载之前首先检查一下自己的电脑是 ...
- Docker入门-搭建docker私有仓库
Docker Hub 目前Docker官方维护了一个公共仓库Docker Hub,其中已经包括了数量超过15000个镜像.大部分需求都可以通过在Docker Hub中直接下载镜像来使用. 注册登录 可 ...
- Docker入门——理解Docker的核心概念
1 前言 相信不少人听过这么一句话: 人类的本质是复读机. 在软件开发领域也一样,我们总是想寻找更好地方式复制优秀的逻辑或系统.最核心的方法是抽取通用逻辑和组件,把差异化的东西接口化或配置化,达到复用 ...
- Docker 入门之docker容器创建
使用docker容器的大多数人都是因为想要隔离不同运行环境的差异,使得自己的应用能更好的移植和部署.那么我们来看看掌握docker需要掌握哪些方面. 1,搭建docker环境 2,编译镜像并将其运行成 ...
- Docker入门 - 005 Docker 容器连接
Docker 容器连接 前面我们实现了通过网络端口来访问运行在docker容器内的服务.下面我们来实现通过端口连接到一个docker容器 网络端口映射 我们创建了一个 python 应用的容器. do ...
- Docker入门 - 002 Docker 的简单操作
系统要求:CentOS 7.2 64 位操作系统. Docker 的简单操作 下载镜像 下载一个官方的 CentOS 镜像到本地 docker pull centos 下载好的镜像就会出现在镜像列表里 ...
随机推荐
- Codeforces 852G Bathroom terminal 【Trie树】
<题目链接> 题目大意: 现在给定出n个字符串,并且进行m此询问,每次询问给出一个匹配串,每次询问都给出该匹配串能够匹配的字符串个数(题目只出现字符'a'~'e').'?'可以看成任意字符 ...
- ssh centos 上传文件
ssh centos 上传文件命令(ftp开不起的情报况下): rz -be 下载文件: sz
- .NET Core 2.0应用程序大小减少50%
.NET Core 2.0应用程序减小体积瘦身官方工具 IL Linker. IL Linker 来源于mono的linker https://github.com/mono/linker,目前还是 ...
- photoshop实现倾斜图片的修正
第一天学习Photoshop,了解到了Photoshop对图片的处理,下面是实现一个倾斜图片修正的两种方法: 举例图片: 第一种方法:1.利用吸管中的标尺工具量倾斜度数: 2.利用旋转图像,旋转对应的 ...
- Vue项目初始
利用npm搭建Vue项目流程 安装 第一步: 官方下载node 或者pip install node 第二步:可忽略 : npm install npm@latest -g 更新最新的稳定版本 第三 ...
- word插入行
如何在Word中添加多行或多列 在弹出的列表中选择[插入],再选择[在下方插入行]即可. 选择多少行就可添加多少行. 按F4重复上一操作可快速添加. 添加列也同样如此,选中一个单元格,右键单击,在弹出 ...
- AGC 007D.Shik and Game(DP)
题目链接 \(Description\) 数轴上有一个人,从\(0\)出发到\(E\),速度为\(1\).数轴上还有\(n\)只熊,每只熊会在经过后的\(T\)时刻后产生一个金币.给定\(E,T\)以 ...
- 潭州课堂25班:Ph201805201 tornado 项目 第三课 项目 图片上传,展示 (课堂笔记)
tornado 相关说明 f增加图片上传功能, 在 main.py ,文件中创建个 UploadHandler 类,用来处理图片上传 上传图片之前,要先渲染这个页面,所以定个 get 方法,把这个页 ...
- [BZOJ5064]B-number
[BZOJ5064]B-number 题目大意: 求\(1\sim n(n\le10^{15})\)间有多少数满足是\(13\)的倍数且包含字符串\(13\). 思路: 数位DP.\(f[i][j][ ...
- [JSOI2018]列队
Description: 作为一名大学生,九条可怜在去年参加了她人生中的最后一次军训. 军训中的一个重要项目是练习列队,为了训练学生,教官给每一个学生分配了一个休息位置.每次训练开始前,所有学生都在各 ...