docker基础

系统环境:centos7

1、环境准备

安装:yum install docker
开启服务:service docker start
测试:docker run hello-world (或是docker verison)

2、镜像测试

搜索本地镜像:docker images
查看源镜像库有关java方面的镜像并且收藏数大于10:docker search -s 10 java
下载镜像:docker pull *** (直接运行某个镜像的时候也会自动下载)

后台运行learn/tutorial镜像并执行sh脚本(脚本含义:每秒输出一次hello world)
docker run -d learn/tutorial /bin/sh -c "while true; do echo hello world; sleep 1; done"

docker run -t -i runoob/ubuntu:v2 /bin/bash

docker ps 查询正在运行的镜像

从上面的查询的ID来查看此镜像输出的日志
docker logs ID

停止镜像
docker stop ID

3、项目实战(注意各个版本)

docker容器环境的安装

a、centos的安装

docker pull centos
国外的docker Hub可能比较慢,使用下面的命令修改 daemon.json文件,会添加一个registry-mirrors:注册服务器镜像(使用daocloud的,默认为docker Hub)
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://ce611378.m.daocloud.io

查看本地镜像列表
docker images

b、操作centos

进入系统:docker run -i -t centos /bin/bash
新建文件:mkdir test
!!!然后更新yum update(ubuntu的系统是 apt-get update)--------教程中只是做一个修改,直接mkdir
!!!然后exit退出系统----------退出系统,容器会停止,所以在此之前用此账户再开一个窗口 执行下面的操作
(后来发现docker ps -a 可以查询到所有的启动过容器,可以获取到ID。
docker start ID 启动停止的镜像
docker attach ID 进入镜像中 ###exit之后镜像依旧挂掉
或是 docker exec -i -t ID /bin/bash ###这种方式镜像在后台存活
)

c、提交修改

docker commit -m="第一次提交" -a="polaris" 425cef90ab3f polaris/centos:v1
-m: 描述信息
-a: 作者
425cef90ab3f:ID
polaris/centos:v1 :创建的目标镜像名+tag

重新进入刚刚提交的镜像
docker run -i -t polaris/centos:v1 /bin/bash
之前所做的操作都存在

***如果你想推送你的镜像到注册中心

首先需要在docker官网创建一个Repository
如果你本地的名字和创建的不一样,会提示未授权,使用docker tag local-images:v1 dockerHub-images:v1
a、docker login 登录docker
b、docker push **** 然后push你的本地镜像(很多操作和git类似)

快速构建
1、使用docker bulid来构建(会读取dockerfile文件),推荐!更快速简洁
2、先pull然后修改之后commit(方法一的底层也是通过这种方式)

** 注意 **

1、从国外服务器pull镜像速度较慢,直接使用由DaoCloud或者阿里提供的Registry Mirror服务

http://blog.daocloud.io/how-to-master-docker-image/

2、挂载磁盘

docker run -it -v /home/download:/mnt polaris/centos:v1 /bin/bash
将宿主的下载文件夹 挂载 到docker容器polaris镜像中的docker下
但如果你想 在已经启动的docker镜像中挂载 请参考(还没试过)http://www.open-open.com/lib/view/open1421996521062.html

3、搭建基本环境(JDK8 + tomcat7)

a, 现在宿主机器里wget下资源(JDK8+tomcat7的tar包),坑爹的JDK7官网已经不支持游客下载
b, 将宿主磁盘挂载到docker镜像mnt目录下,解压然后cp到自己定义的目录
c, jdk: 修改/etc/profile,添加路径保存,然后source /etc/profile更新

4、查看容器相关信息(主要是查看网络配置,容器里面很多命令都没有)

docker inspect a7e0139b5940

5、端口映射

docker run -i -t -p 5000:8080 polaris/centos:v1 /bin/bash (交互型)
docker run -d -i -t -p 5000:8080 polaris/centos:v1 (后台型)

6、阿里云(以本人为例子)

下载
docker pull registry.cn-hangzhou.aliyuncs.com/polarisnosnow/polaris:v2

上传
docker login --username=**** registry.cn-hangzhou.aliyuncs.com
docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/polarisnosnow/polaris:[镜像版本号]
docker push registry.cn-hangzhou.aliyuncs.com/polarisnosnow/polaris:[镜像版本号]

7、搭建注册服务器

docker pull registry
docker run -p 5000:5000 -d -i -t registry
之后就可以直接commit&push了
docker commit cid 127.0.0.1:5000/my_image:v1
docker push 127.0.0.1:5000/my_image:v1

可以使用docker API查看库中结果
http://127.0.0.1:5000/v2/_catalog
http://127.0.0.1:5000/v2/my_image/tag/list

注意客户端在/etc/docker/daemon.json 中添加{ "insecure-registries":["127.0.0.1:5000"]}
安全访问(默认走的https)

8、docker管理界面

dockerUI:只能用于单机,单功能齐全
构建脚本:docker run -d -p 9000:9000 --privileged -v /var/run/docker.sock:/var/run/docker.sock uifd/ui-for-docker

shipyard:适合集群,各种资源分配,性能检测等
/etc/sysconfig/docker中添加对2375的监听 OPTIONS="-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock"
shipyard构建脚本(启动的容器较多) curl -s https://shipyard-project.com/deploy | bash -s
Username: admin Password: shipyard
或者:docker run --rm -v /var/run/docker.sock:/var/run/docker.sock shipyard/deploy start

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,602评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,442评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,878评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,306评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,330评论 5 373
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,071评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,382评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,006评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,512评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,965评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,094评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,732评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,283评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,286评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,512评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,536评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,828评论 2 345

推荐阅读更多精彩内容