文档章节

centos7安装docker

fengyexjtu
 fengyexjtu
发布于 2016/12/11 18:12
字数 1225
阅读 80
收藏 2

centos7安装docker

修改源

    sudo tee /etc/yum.repos.d/docker.repo <<-'EOF'
    [dockerrepo]
    name=Docker Repository
    baseurl=https://yum.dockerproject.org/repo/main/centos/7/
    enabled=1
    gpgcheck=1
    gpgkey=https://yum.dockerproject.org/gpg
    EOF

安装docker

    yum install docker-engine

安装过程可能比较慢,包下载不下来 docker-engine-1.12.3-1.el7.centos.x86_64.rpm

可以手动下载,然后使用命令 yum localinstall docker-engine-1.12.3-1.el7.centos.x86_64.rpm进行安装

安装Docker-compose

先安装pip

# wget  https://raw.githubusercontent.com/pypa/pip/master/contrib/get-pip.py 
# python get-pip.py

再安装compose

# pip install docker-compose

测试案例

下载测试代码

# git clone https://github.com/jiekechoo/docker-haproxy

运行

# cd docker-haproxy
# docker-compose up

浏览器打开本机IP:http://192.168.1.230

docker加速器配置

使用daocloud的加速器.还可以配置163等

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://6f0d54fb.m.daocloud.io

会在 /etc/docker/daemon.json 中 生成以下语句:

{"registry-mirrors": ["http://6f0d54fb.m.daocloud.io"]}

重启docker即可.

docker简单使用流程

创建一个ubuntu的虚拟机,退出后删除本虚拟机

docker run -it --rm ubuntu:14.04 /bin/bash

创建一个ubuntu的虚拟机,并挂载一个文件夹,退出后删除本虚拟机

docker run -it -v /c/Users/hzlzjr/:/hz/ --rm ubuntu:14.04 /bin/bash

创建一个名字为ubuntu的ubuntu系统虚拟机

docker run -it --name ubuntu ubuntu:14.04 /bin/bash

查看所有虚拟机和状态

docker ps -a

查看运行的虚拟机

docker ps -a

开启虚拟机

docker start ubuntu

进入虚拟机

docker exec -it ubuntu /bin/zsh

Docker 清理命令

杀死所有正在运行的容器

docker kill $(docker ps -a -q)

删除所有已经停止的容器

docker rm $(docker ps -a -q)

删除所有未打 dangling 标签的镜像

docker rmi $(docker images -q -f dangling=true)

删除所有镜像

docker rmi $(docker images -q)

为这些命令创建别名

# ~/.bash_aliases

# 杀死所有正在运行的容器.
alias dockerkill='docker kill $(docker ps -a -q)'
# 删除所有已经停止的容器.
alias dockercleanc='docker rm $(docker ps -a -q)'
# 删除所有未打标签的镜像.
alias dockercleani='docker rmi $(docker images -q -f dangling=true)'
# 删除所有已经停止的容器和未打标签的镜像.
alias dockerclean='dockercleanc || true && dockercleani'

常用命令

  1. 查看容器的root用户密码 docker logs <容器名orID> 2>&1 | grep '^User: ' | tail -n1 因为Docker容器启动时的root用户的密码是随机分配的。所以,通过这种方式就可以得到redmine容器的root用户的密码了。
  2. 查看容器日志 docker logs -f <容器名orID>
  3. 查看正在运行的容器 docker ps docker ps -a为查看所有的容器,包括已经停止的。
  4. 删除所有容器 docker rm $(docker ps -a -q) 删除单个容器 docker rm <容器名orID>
  5. 停止、启动、杀死一个容器 docker stop <容器名orID> docker start <容器名orID> docker kill <容器名orID>
  6. 查看所有镜像 docker images
  7. 删除所有镜像 docker rmi $(docker images | grep none | awk '{print $3}' | sort -r)
  8. 运行一个新容器,同时为它命名、端口映射、文件夹映射。以redmine镜像为例 docker run --name redmine -p 9003:80 -p 9023:22 -d -v /var/redmine/files:/redmine/files -v /var/redmine/mysql:/var/lib/mysql sameersbn/redmine
  9. 一个容器连接到另一个容器 docker run -i -t --name sonar -d -link mmysql:db tpires/sonar-server sonar 容器连接到mysql容器,并将mmysql容器重命名为db。这样,sonar容器就可以使用db的相关的环境变量了。
  10. 拉取镜像 docker pull <镜像名:tag>docker pull sameersbn/redmine:latest
  11. 当需要把一台机器上的镜像迁移到另一台机器的时候,需要保存镜像与加载镜像。 机器a docker save busybox-1 > /home/save.tar 使用scp将save.tar拷到机器b上,然后: docker load < /home/save.tar
  12. 构建自己的镜像 docker build -t <镜像名> <Dockerfile路径> 如Dockerfile在当前路径: docker build -t xx/gitlab .
  13. 重新查看container的stdout
# 启动top命令,后台运行
$ ID=$(sudo docker run -d ubuntu /usr/bin/top -b)
# 获取正在running的container的输出
$ sudo docker attach $ID
top - 02:05:52 up  3:05,  0 users,  load average: 0.01, 0.02, 0.05
Tasks:   1 total,   1 running,   0 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.1%us,  0.2%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    373572k total,   355560k used,    18012k free,    27872k buffers
Swap:   786428k total,        0k used,   786428k free,   221740k cached
^C$
$ sudo docker stop $ID
  1. 后台运行(-d)、并暴露端口(-p) docker run -d sh-p 127.0.0.1:33301:22 centos6-s
  2. 从Container中拷贝文件出来 sudo docker cp 7bb0e258aefe:/etc/debian_version . 拷贝7bb0e258aefe中的/etc/debian_version到当前目录下。 注意:只要7bb0e258aefe没有被删除,文件命名空间就还在,可以放心的把exit状态的container的文件拷贝出来
  3. 查看container的ip地址 docker inspect --format='{{.NetworkSettings.IPAddress}}' $CONTAINER_ID

备注:

  1. ubuntu14下的docker是没有service服务。去除每次sudo运行docker命令,需要添加组:
# Add the docker group if it doesn't already exist.
$ sudo groupadd docker
#改完后需要重新登陆用户
$ sudo gpasswd -a ${USER} docker
  1. ubuntu14的febootstrap没有-i命令
  2. Dockerfile中的EXPOSE、docker run --expose、docker run -p之间的区别 Dockerfile的EXPOSE相当于docker run --expose,提供container之间的端口访问。docker run -p允许container外部主机访问container的端口

© 著作权归作者所有

共有 人打赏支持
fengyexjtu

fengyexjtu

粉丝 5
博文 52
码字总数 20519
作品 0
西安
程序员
私信 提问
Docker实践(一):安装

前提 系统:我这边都使用虚拟机安装的CentOS7,具体安装可以参考:Windows安装Linux虚拟机(CentOS7) yum:推荐更新下yum:yum update;我们这边CentOS7自带docker,如果没有安装docker可以用y...

u010246789
2016/12/31
0
0
Docker自制镜像之私有云平台完整版

一、Docker安装 Docker之安装篇 二、Docker操作 搜索中央仓库可用镜像 $ docker search centos 2.1【镜像操作命令】 2.1.1 查看所有镜像docker images删除所有镜像 $ docker rmi $(docker im...

saxon_i
08/13
0
0
CentOS快速安装docker服务

  前言   2017 年 3 月,Docker从1.13.x版本开始,版本分为企业版EE和社区版CE,版本号也改为按照时间线来发布,比如17.03就是2017年3月。企业版本是需要付费的,强调安全。      d...

linux运维菜
08/26
0
0
Centos7制作docker初始镜像

Centos7用febootstrap制作docker初始镜像包 使用工具:febootstrap 下载地址:http://down.51cto.com/data/2330414 使用命令: febootstrap -i bash -i wget -i yum -i iputils -i iproute -......

vanche
2017/07/30
0
0
centos7系统下 docker 环境搭建

运行环境: VMware Workstation Pro 在虚拟机中安装centos7系统, 选择最小安装, 网络连接方式选择的桥接(与宿主机在同一IP段) centos7一定要安装64位, docker目前不支持32位内核 ##看准了, 是...

qq_33326449
03/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

传播正能量——《海南英才》阅读的读后感2200字

传播正能量——《海南英才》阅读的读后感2200字: 新华社记者12月8日从公安部获悉,针对自媒体“网络水军”敲诈勒索等违法犯罪活动突出问题,今年以来,公安部组织各地公安机关依法深入开展侦...

原创小博客
12分钟前
1
0
Confluence 6 对一个空间进行归档后产生的影响

空间 如果一个空间被归档: 将不会在查找结果中显示,除非你选择 在归档空间中查找(Search archived spaces)。如果没有归档空间的话,这个功能是隐藏的。 页面和内容将不会在 Confluence 的...

honeymose
14分钟前
2
0
java框架学习日志-2

上篇文章(java框架学习日志-1)虽然跟着写了例子,也理解为什么这么写,但是有个疑问,为什么叫控制反转?控制的是什么?反转又是什么? 控制其实就是控制对象的创建。 反转与正转对应,正转...

白话
今天
4
0
Integer使用双等号比较会发生什么

话不多说,根据以下程序运行,打印的结果为什么不同? Integer a = 100;Integer b = 100;System.out.println(a == b);//print : trueInteger a = 200;Integer b = 200;System.out.pr...

兜兜毛毛
昨天
10
0
CockroachDB

百度云上的CockroachDB 云数据库 帮助文档 > 产品文档 > CockroachDB 云数据库 > 产品描述 开源NewSQL – CockroachDB在百度内部的应用与实践 嘉宾演讲视频及PPT回顾:http://suo.im/5bnORh ...

miaojiangmin
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部