docker 初步使用
CentOS Linux release 7.2.1511
Docker version 17.03.1-ce
安装与启动
yum默认只有旧版本的docker,没有docker-ce,需要添加一个docker-ce的源:
// 这里用的中科大的源,速度会比较理想;而官方的地址是:https://download.docker.com
# wget https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
#yum install -y docker-ce
启动和验证:
# systemctl start docker
# docker -v
Docker version 17.03.1-ce, build c6d412e
查询和下载镜像
查询:
# docker search centos
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
centos The official build of CentOS. 3217 [OK]
jdeathe/centos-ssh CentOS-6 6.8 x86_64 / CentOS-7 7.3.1611 x8... 63 [OK]
consol/centos-xfce-vnc Centos container with "headless" VNC sessi... 24 [OK]
...
没什么特殊原因当然用第一个官方的镜像,理论上应该这样下载docker pull centos,但因为服务器在国外容易失败,所以用国内的源daocloud.io/centos
下载和展示:
# docker pull daocloud.io/centos
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
daocloud.io/centos latest 67591570dd29 11 weeks ago 191.8 MB
启动镜像
# docker run -dti --name hellodocker daocloud.io/centos
参数解析:
-d 后台运行
-t 分配一个伪终端,这样下面才能连进去
-i 保持输入,这样连进去后才能正常使用命令
--name 指定容器的名字,不指定会随机生成一个
从镜像启动后的东西叫容器,通过 ps 查看(ps只显示正在运行的容器,显示所有需要加参数-a):
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c74f53b8dbef daocloud.io/centos "/bin/bash" seconds ago Up seconds hellodocker
第一列是容器id,最后一列是容器名,在下面连接、停止、启动等操作时传入这两者都可以,其中id可以只传前三位类似git那种使用方式;
容器管理
连接到启动的容器用 attach ,连接成功后就可以像操作一台真实的linux一样(不过由于attach到的是同一个/bin/bash所以不支持多用户操作):
# docker attach hellodocker
[root@c74f53b8dbef /]# whoami
root
[root@c74f53b8dbef /]# pwd
/
[root@c74f53b8dbef /]#
attach后退出有两种方式,直接输入exit,但这样会把容器也停掉;不停容器的退出方式是ctrl+p+q;
停止容器:
# docker stop hellodocker //正常关机,需要一点时间
# docker kill hellodocker //这个相当于直接断电
再启动的时候注意不要再用docker run了,那样会重新生成一个新容器,应该这样:
# docker start hellodocker
删除容器和镜像:
# docker rm hellodocker
# docker rmi daocloud.io/centos
over
docker 初步使用的更多相关文章
- Docker初步认识安装和简单实例
前话 问题 开发网站需要搭建服务器环境,FQ官网下载软件包,搭建配置nginx,apache,数据库等.官网没有直接可用的运行版本,担心网络流传的非官方发布软件包不安全还得自行编译官方源码安装,忘记步 ...
- Docker初步了解 2016-10-30 20:46 279人阅读 评论(31) 收藏
什么是docker? Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器. Docker本质上是一种软件,让用户创建镜像(很像虚拟机的模板),并且随后在容器里 ...
- docker初步
[Note,]由于docker的局限性,docker只能运行在64位的系统中 docker软件应用程序可以重复地运行在任何地方,因为它的容器包含了所有的环境依赖关系! docker有三种方式运行 作为 ...
- Docker 初步认识
1.docker 是什么? 一个开源的应用容器引擎,个人理解 就是虚拟的应用运行环境. 2.安装Docker for windows 下载地址 :https://store.docker.com/ed ...
- Docker初步了解
Docker 是什么 https://www.docker.com/ Docker 这个单词英文原意是码头工人,搬运工的意思,这个搬运工搬运的是各种应用的容器. 官方的说法是,Docker 是提供给开 ...
- docker 初识之二(简单发布ASP.NET Core 网站)
在发布ASP.NET Core网站以前,先介绍一下DaoCloud 一个免费的docker云容器服务平台.登陆官方网站,创建一台docker主机,这台主机有120分钟的使用时间,对于鄙人学习使用正好合 ...
- Docker技术综述
从技术入门到实战:docker初步尝试 docker中文社区 容器和镜像的导入和导出
- 阿里云ECS(Centos7.2 64bit)安装Docker
购买了阿里云的ECS服务器后,一直在尝试安装Docker,使用过Ubuntu和CentOS系统,也一直在查找文档,但都是Docker安装完成后却无法访问,一直在ECS上不停的更换系统盘 再次按官方文档 ...
- 总结对Docker这个东西的想法
记得一开始的时候,还只能在一些网站上看到关于Docker零星的一些消息,之后的不久,有关Docker消息就遍布网络. 是什么因素让Docker火起来的? 或者说什么原因促使大家都对Docker感兴趣并 ...
随机推荐
- PHP Fatal error: Uncaught ErrorException: preg_match_all (): JIT compilation failed: no more memory in phar
PHP 升级到 7.3 后,出现 BUG: 解决办法:修改php.ini文件,;pcre.jit=1 => pcre.jit=0
- Generator yield语法和 co模块
Generator yield 语法使用,也叫生成器,实际上就是多个异步按顺序执行 1.下面是一个读取两个文件的例子 const fs = require('fs'); const readFile ...
- ODBC的JAR包和PLSQL
eclipse编辑器,写java 下载ODBC的JAR包 配置一下用户名和密码 java连接上数据库后 不是直接操作数据库 在代码里面有SQL语句 代码执行的时候遇到这些语句就可以操作数据库 平时操 ...
- jmeter 二次开发---实现自定义函数插件
1.前提: 有时候,Jmeter自带的函数,可能不能满足于业务的需求,这时候,我们可以自己写一个函数插件: 2.创建maven工程 一直next,输入GroupID,ArtifactId->fi ...
- iOS 正则表达式(一)
在iOS开发中,正则一直是最常用的,但也是一直记不住的,现在做一些简单的总结 我们在网上找的正则,要有'\',这个在iOS是转义符,需要'\\'这样 int main(int argc, const ...
- Css预处理器---Less(一)
一.简介: Less是一种动态样式语言,可以在样式中使用变量,继承,运算,函数 二.使用 (1)客户端使用 //引入您的.less样式文件,rel属性区别去css为stylesheet/less &l ...
- Bootstrap-按钮相关的class
.btn 基础class.btn-default 白底黑字的按钮.btn-warning 红色按钮.btn-success 绿色按钮.btn-info 浅蓝色按钮.bt ...
- tp命名空间
namespace Home\Controller; 命名空间 根命名空间下的类所在的文件夹use Think\Controller; 使用 根命名空间下的controller类 顶头写 ...
- ef entity转json引起的Self referencing loop
问题简介:前段时间做项目时,将取到的entity往Redis cache里存放时报多重引用的错误. Self referencing loop detected for property 'Check ...
- django后台将最新文章显示在前面
在你定义的views.py中修改 Models.objects.order_by("-pub_date") 更据时间排列 Models.objects.order_by(&q ...